从退款 R 包中的拟合 pfr 对象中提取系数函数

Extract coefficient functions from a fitted pfr-object from refund R package

我正在尝试从拟合的 pfr 对象中提取系数。

我不清楚:

  1. 例如,二元向量 n = c(n_1,n_2) 的哪个元素对应参数 t,哪个元素对应参数 Z_i

  2. 我假设(猜测)默认情况下,参数 t(时间)的 坐标范围 (min(t), min(t)),鉴于所有 t 坐标对于所有观察都是相同的 - 是这种情况吗?

  3. 坐标Z_i的范围是怎么定义的? 所有(标量)值的范围是否存在于所有时间点和所有观测值的 Z_i 内的数据集中?

天哪,帮助页面太糟糕了...

  1. n 的第一个参数是 t,第二个参数是 Z(见示例 下)
  2. 是的
  3. 是的。请参阅下面的示例,了解使用 coords-argument
  4. 定义您自己的评估网格

```

library(refund)
data(DTI)
DTI1 <- DTI[DTI$visit==1 & complete.cases(DTI),]
par(mfrow=c(1,2))

# Fit FGAM: 
(fit_af <- pfr(pasat ~ sex + case + af(cca, k=c(5, 8), bs="ps"), data=DTI1))
#> 
#> Family: gaussian 
#> Link function: identity 
#> 
#> Formula:
#> pasat ~ sex + case + te(z = cca.tmat, x = cca.omat, by = L.cca, 
#>     k = c(5, 8), bs = "ps")
#> 
#> Estimated degrees of freedom:
#> 2.71  total = 4.71 
#> 
#> REML score: 232.6839     rank: 40/42


all.equal(
  coefficients(fit_af, n = c(100, 10)), 
  coefficients(fit_af, 
               coords = list(cca.argvals = seq(0, 1, l = 100),
                             cca = modelr::seq_range(DTI1$cca, n = 10)))
  )
#> [1] TRUE

```