从mars,earth r包中的evimp提取返回值

从mars,earth r包中的evimp提取返回值,r,R,R中的接地组件: 您好,我正在运行一个循环,从我的主数据库中提取1000个数据子集,并运行一系列基于MARS的测试,然后在df中进行总结。我想提取evimp返回值(rows=变量名,cols=#子集,GCV,RSS),对每次运行的输入变量重要性进行排序。但是,我无法将这些值提取或添加到数据帧,因为它是一个“evimp”类。如何提取这些值并将其放入一个表中?evimp类确实使获取数据变得更加困难,但是unclass会将其转换为一个可以处理的矩阵 例如: library(earth) data(o

R中的接地组件:
您好,我正在运行一个循环,从我的主数据库中提取1000个数据子集,并运行一系列基于MARS的测试,然后在df中进行总结。我想提取evimp返回值(rows=变量名,cols=#子集,GCV,RSS),对每次运行的输入变量重要性进行排序。但是,我无法将这些值提取或添加到数据帧,因为它是一个“evimp”类。如何提取这些值并将其放入一个表中?

evimp类确实使获取数据变得更加困难,但是
unclass
会将其转换为一个可以处理的矩阵

例如:

library(earth)

data(ozone1)
earth.mod <- earth(O3 ~ ., data=ozone1, degree=2)
ev <- evimp(earth.mod, trim=FALSE)

evdf = as.data.frame(unclass(ev[,c(3,4,6)]))
evdf
         nsubsets        gcv       rss
temp           11 100.000000 100.00000
humidity        9  35.667541  38.88609
ibt             7  31.618413  33.98691
doy             7  31.618413  33.98691
ibh             6  33.432738  36.02932
dpg             6  27.452997  29.75686
vis             5  21.426773  24.09804
wind            2  10.263603  12.59467
vh              1   5.324573   7.65049
库(地球)
数据(ozone1)
earth.mod