[英]map function in tidyverse language
我有以下公式
#Regression(Y1 - VTV)----
m1_vtv<-formula(vtv~retailsales)
m2_vtv<-formula(vtv~retailsales+cpi)
m3_vtv<-formula(vtv~retailsales+cpi+tmf)
#Regression(Y2 - VUG)----
m1_vug<-formula(vug~retailsales)
m2_vug<-formula(vug~retailsales+cpi)
m3_vug<-formula(vug~retailsales+cpi+tmf)
我已将它们添加到名为regression_list 的列表中
regression_list<-c(m1_vtv,m2_vtv,m3_vtv,m1_vug,m2_vug,m3_vug)
我正在尝试一起浏览()regression_list 中的所有模型。 单独工作:
tidy(model1) %>% as_tibble()
glance(model1)
但是当我尝试这个时
regression_list %>%
map(~lm(.x, data = df_final)) %>%
map(~as_tibble(.x, data = df_final)) %>%
map(~glance(.x, data = df_final))
我收到错误消息:
as.data.frame.default(value, stringsAsFactors = FALSE) 中的错误:无法将类 '"lm"' 强制转换为 data.frame
寻找将其拟合到 map 函数中的方法,以运行regression_list
所有公式
正如错误消息所说,您正在尝试将lm
对象转换为 tibble。 您也不需要多个map
,因为您可以在同一个map
函数中执行此操作。 尝试 :
library(purrr)
library(broom)
result <- regression_list %>% map(~glance(lm(.x, data = df_final)))
如果您希望在一个数据map_df
得到result
,您可以使用map_df
代替map
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.