如何将ns / b的输出列转换为R中的data.table?

时间:2015-08-19 18:56:18

标签: r data.table splines

我有data.table个功能,例如:

library(data.table)
m = data.table(x1=rnorm(10),x2=rnorm(10))

通常情况下,如果我想要lm中某个功能的自然样条基础扩展,我可以执行以下操作:

library(splines)
m[,lm(x2 ~ ns(x1,df=4))]

但是如果我想要的是将样条基础列添加到我的data.frame中以便以后不起作用:

m[,c('a','b','c','d') := ns(x1,df=4)]

有优雅的方式来分配它们吗?无需手动提取这样的列:

foo = ns(m$x1,df=4)
m[,a:=foo[1,]] #etc

0 个答案:

没有答案
相关问题