通过循环合并数据帧然后返回

时间:2017-10-11 15:23:07

标签: r loops merge

我试图通过循环合并数据帧然后将合并的文件返回到R内存,但无法使最后一部分工作。

这是我的merge_data函数:

list<-c("df1", "df2")
df1 <- diamonds[1:20,] 
df2 <- diamonds[21:40,]
data2<-diamonds[41:60,]

merge_data <- function(data){
  temp<-merge(data, data2, by.x = "cut", by.y="cut", all.x = T)
  temp[is.na(temp)] <-"none"
  print(temp)
}

以及应该返回合并数据帧的有问题的部分

for(i in list){
  temp<-(merge_data(get(i)))
  return(list[i], temp)
}

1 个答案:

答案 0 :(得分:2)

尝试:

for(i in list){
  assign(paste0(i, "_merge"), merge_data(get(i)))
}

合并后可能需要使用这些因素,因此它不会生成NA s