在R中的for循环中循环多个数据帧

时间:2019-08-08 17:00:06

标签: r dataframe for-loop

我有四个数据框A,B,C,D。我想遍历这四个数据帧,以便将它们中的每个作为第四个参数传递给自定义函数testdf(),该参数只能采用数据帧数据类型。

for (a in 1: (A,B,C,D)){
  a<-testdf(x,y,z,A)
}

我也尝试使用列表,但是即使在函数中传递了as.data.frame(mylist(A))时,它似乎也不起作用,这引发了无法传递列表的错误。

1 个答案:

答案 0 :(得分:0)

您编写代码的方式似乎存在变量混合。我下面的例子应该解决这个问题。

使用您之前尝试过的列表可能是个不错的选择。


A <- as.data.frame(0,matrix(0, nrow = 4, ncols = 6)
B <- as.data.frame(0,matrix(0, nrow = 5, ncols = 6)
C <- as.data.frame(0,matrix(0, nrow = 4, ncols = 4)
D <- as.data.frame(0,matrix(0, nrow = 3, ncols = 5)

list.dfs <- list(A,B,C,D)

for (i in 1:length(list.dfs)){

#Since I don't know your function I just catenated the letters with
#whatever is in your data frames
  result <- cat("a","b","c",i)

}

让我知道这对您有帮助还是需要澄清!