File: test_regr_fgam.R

package info (click to toggle)
r-cran-mlr 2.19.1%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 8,392 kB
  • sloc: ansic: 65; sh: 13; makefile: 5
file content (28 lines) | stat: -rwxr-xr-x 1,141 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# Be careful that one need to change the columns name again after cbine several
# matrix

test_that("testif FDA_regr_fgam generate same prediction with refund::pfr", {
  # errors on R 4.1
  skip_if(sessionInfo()$R.version$status == "Under development (unstable)")
  requirePackagesOrSkip("refund")

  data(DTI)
  dti1 = DTI[DTI$visit == 1 & complete.cases(DTI), ]
  # subset a portion of the data(complete.cases select non missing value rows)
  # dti1 is already a matrix dataframe
  fit.af = pfr(
    formula = pasat ~ af(cca, Qtransform = TRUE, k = 7, m = 2),
    data = dti1)
  prd.refund = predict(fit.af, newdata = dti1, type = "response")
  # makeFunctionalData require plain dataframe
  df = data.frame(as.list(dti1[, c("pasat", "cca")]))
  fdf = makeFunctionalData(df, fd.features = list("cca" = 2:94))
  lrn = makeLearner("regr.fgam",
    Qtransform = TRUE, mgcv.te_ti.k = 7,
    mgcv.te_ti.m = 2)
  task = makeRegrTask(data = fdf, target = "pasat")
  mod1f = train(learner = lrn, task = task)
  prd.mlr = predict(object = mod1f, newdata = fdf)
  res = all.equal(as.numeric(prd.refund), prd.mlr$data$response)
  expect_true(res)
})