从多个数据帧中获取和保存结果

问题描述 投票:0回答:1

我有九个不同的数据帧 df1, df2, df3, df4, df5, df6, df7, df8df9. 我想写一个函数,应用下面的计算,用 mice 包中的每个数据帧单独。

imputed_Data <- mice(df, m=3, maxit = 3, method = 'pmm', seed = 500)

到最后,我应该得到九个不同的 imputed_Data.

我的做法是:

for(i in 9) {
  imputed_Data <- mice(df[[i]], m=3, maxit = 3, method = 'pmm', seed = 500)
  result[[i]] <- mice::complete(imputed_Data)
  }
r dataframe imputation multiple-mice
1个回答
0
投票

把你的 df列表中的

library(purrr)
dfList <- list(df1, df2, df3, df4, df5, df6, df7, df8,  df9)

这将给你一个df的列表。

## NOT RUN ##
imputed_data <- 
  map(dfList, ~ mice(.x, m=3, maxit = 3, method = 'pmm', seed = 500)) 

如果你想让它成为一个单一的连接的df

imputed_data <- 
  map_df(dfList, ~ mice(.x, m=3, maxit = 3, method = 'pmm', seed = 500))
© www.soinside.com 2019 - 2024. All rights reserved.