Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
tianlh
LightGBM-DCU
Commits
fc991c9d
Unverified
Commit
fc991c9d
authored
Oct 24, 2019
by
James Lamb
Committed by
GitHub
Oct 24, 2019
Browse files
[R-package] added R linting and changed R code to comma-first (fixes #2373) (#2437)
parent
b4bb38d9
Changes
63
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
43 additions
and
30 deletions
+43
-30
R-package/tests/testthat/test_custom_objective.R
R-package/tests/testthat/test_custom_objective.R
+13
-5
R-package/tests/testthat/test_dataset.R
R-package/tests/testthat/test_dataset.R
+16
-14
R-package/tests/testthat/test_parameters.R
R-package/tests/testthat/test_parameters.R
+14
-11
No files found.
R-package/tests/testthat/test_custom_objective.R
View file @
fc991c9d
context
(
'Test models with custom objective'
)
data
(
agaricus.train
,
package
=
'lightgbm'
)
data
(
agaricus.test
,
package
=
'lightgbm'
)
data
(
agaricus.train
,
package
=
'lightgbm'
)
data
(
agaricus.test
,
package
=
'lightgbm'
)
dtrain
<-
lgb.Dataset
(
agaricus.train
$
data
,
label
=
agaricus.train
$
label
)
dtest
<-
lgb.Dataset
(
agaricus.test
$
data
,
label
=
agaricus.test
$
label
)
watchlist
<-
list
(
eval
=
dtest
,
train
=
dtrain
)
...
...
@@ -17,11 +17,19 @@ logregobj <- function(preds, dtrain) {
evalerror
<-
function
(
preds
,
dtrain
)
{
labels
<-
getinfo
(
dtrain
,
"label"
)
err
<-
as.numeric
(
sum
(
labels
!=
(
preds
>
0
)))
/
length
(
labels
)
return
(
list
(
name
=
"error"
,
value
=
err
,
higher_better
=
FALSE
))
return
(
list
(
name
=
"error"
,
value
=
err
,
higher_better
=
FALSE
))
}
param
<-
list
(
num_leaves
=
8
,
learning_rate
=
1
,
objective
=
logregobj
,
metric
=
"auc"
)
param
<-
list
(
num_leaves
=
8
,
learning_rate
=
1
,
objective
=
logregobj
,
metric
=
"auc"
)
num_round
<-
10
test_that
(
"custom objective works"
,
{
...
...
R-package/tests/testthat/test_dataset.R
View file @
fc991c9d
...
...
@@ -3,15 +3,15 @@ require(Matrix)
context
(
"testing lgb.Dataset functionality"
)
data
(
agaricus.test
,
package
=
'lightgbm'
)
data
(
agaricus.test
,
package
=
'lightgbm'
)
test_data
<-
agaricus.test
$
data
[
1
:
100
,]
test_label
<-
agaricus.test
$
label
[
1
:
100
]
test_that
(
"lgb.Dataset: basic construction, saving, loading"
,
{
# from sparse matrix
dtest1
<-
lgb.Dataset
(
test_data
,
label
=
test_label
)
dtest1
<-
lgb.Dataset
(
test_data
,
label
=
test_label
)
# from dense matrix
dtest2
<-
lgb.Dataset
(
as.matrix
(
test_data
),
label
=
test_label
)
dtest2
<-
lgb.Dataset
(
as.matrix
(
test_data
),
label
=
test_label
)
expect_equal
(
getinfo
(
dtest1
,
'label'
),
getinfo
(
dtest2
,
'label'
))
# save to a local file
...
...
@@ -40,7 +40,7 @@ test_that("lgb.Dataset: getinfo & setinfo", {
})
test_that
(
"lgb.Dataset: slice, dim"
,
{
dtest
<-
lgb.Dataset
(
test_data
,
label
=
test_label
)
dtest
<-
lgb.Dataset
(
test_data
,
label
=
test_label
)
lgb.Dataset.construct
(
dtest
)
expect_equal
(
dim
(
dtest
),
dim
(
test_data
))
dsub1
<-
slice
(
dtest
,
1
:
42
)
...
...
@@ -50,7 +50,7 @@ test_that("lgb.Dataset: slice, dim", {
})
test_that
(
"lgb.Dataset: colnames"
,
{
dtest
<-
lgb.Dataset
(
test_data
,
label
=
test_label
)
dtest
<-
lgb.Dataset
(
test_data
,
label
=
test_label
)
expect_equal
(
colnames
(
dtest
),
colnames
(
test_data
))
lgb.Dataset.construct
(
dtest
)
expect_equal
(
colnames
(
dtest
),
colnames
(
test_data
))
...
...
@@ -62,7 +62,7 @@ test_that("lgb.Dataset: colnames", {
test_that
(
"lgb.Dataset: nrow is correct for a very sparse matrix"
,
{
nr
<-
1000
x
<-
Matrix
::
rsparsematrix
(
nr
,
100
,
density
=
0.0005
)
x
<-
Matrix
::
rsparsematrix
(
nr
,
100
,
density
=
0.0005
)
# we want it very sparse, so that last rows are empty
expect_lt
(
max
(
x
@
i
),
nr
)
dtest
<-
lgb.Dataset
(
x
)
...
...
@@ -70,15 +70,17 @@ test_that("lgb.Dataset: nrow is correct for a very sparse matrix", {
})
test_that
(
"lgb.Dataset: Dataset should be able to construct from matrix and return non-null handle"
,
{
rawData
<-
matrix
(
runif
(
1000
),
ncol
=
10
)
rawData
<-
matrix
(
runif
(
1000
),
ncol
=
10
)
handle
<-
NA_real_
ref_handle
<-
NULL
handle
<-
lightgbm
:::
lgb.call
(
"LGBM_DatasetCreateFromMat_R"
handle
<-
lightgbm
:::
lgb.call
(
"LGBM_DatasetCreateFromMat_R"
,
ret
=
handle
,
rawData
,
nrow
(
rawData
)
,
ncol
(
rawData
)
,
lightgbm
:::
lgb.params2str
(
params
=
list
())
,
ref_handle
)
,
lightgbm
:::
lgb.params2str
(
params
=
list
())
,
ref_handle
)
expect_false
(
is.na
(
handle
))
})
R-package/tests/testthat/test_parameters.R
View file @
fc991c9d
data
(
agaricus.train
,
package
=
'lightgbm'
)
data
(
agaricus.test
,
package
=
'lightgbm'
)
context
(
"feature penalties"
)
data
(
agaricus.train
,
package
=
'lightgbm'
)
data
(
agaricus.test
,
package
=
'lightgbm'
)
train
<-
agaricus.train
test
<-
agaricus.test
...
...
@@ -12,15 +15,15 @@ test_that("Feature penalties work properly", {
feature_penalties
<-
rep
(
1
,
ncol
(
train
$
data
))
feature_penalties
[
var_index
]
<-
x
lightgbm
(
data
=
train
$
data
,
label
=
train
$
label
,
num_leaves
=
5
,
learning_rate
=
0.05
,
nrounds
=
20
,
objective
=
"binary"
,
feature_penalty
=
paste0
(
feature_penalties
,
collapse
=
","
)
,
metric
=
"binary_error"
,
verbose
=
-1
data
=
train
$
data
,
label
=
train
$
label
,
num_leaves
=
5
,
learning_rate
=
0.05
,
nrounds
=
20
,
objective
=
"binary"
,
feature_penalty
=
paste0
(
feature_penalties
,
collapse
=
","
)
,
metric
=
"binary_error"
,
verbose
=
-1
)
})
...
...
Prev
1
2
3
4
Next
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment