Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 对几个数据帧应用循环_R_Loops - Fatal编程技术网

R 对几个数据帧应用循环

R 对几个数据帧应用循环,r,loops,R,Loops,我有10个不同的数据帧,分别命名为df1,df2,df3,。。。df10。我想找出所有10个数据帧的所有列的平均值。我已经尝试过这段代码,但是出现了错误“df[j]中的error]:类型为“closure”的对象不可子集”。有更好的方法吗 for (j in 1:10) { mean[j] <- apply(df[j][,2:57], 2 , mean , na.rm=TRUE) } for(1:10中的j){ mean[j]获取列表中的数据帧,并使用colMeans获取列的平均值 re

我有10个不同的数据帧,分别命名为df1,df2,df3,。。。df10。我想找出所有10个数据帧的所有列的平均值。我已经尝试过这段代码,但是出现了错误“df[j]中的error]:类型为“closure”的对象不可子集”。有更好的方法吗

for (j in 1:10) {
mean[j] <- apply(df[j][,2:57], 2 , mean , na.rm=TRUE)
}
for(1:10中的j){

mean[j]获取列表中的数据帧,并使用
colMeans
获取列的平均值

result <- lapply(mget(paste0('df', 1:10)), function(x) colMeans(x[, 2:57], na.rm = TRUE))

result获取列表中的数据帧,并使用
colMeans
获取列的平均值

result <- lapply(mget(paste0('df', 1:10)), function(x) colMeans(x[, 2:57], na.rm = TRUE))
结果使用嵌套sapply:

df1 <- data.frame(c1 = 1:5, c2 = 4:8)
df2 <- data.frame(c1 = 6:10, c2 = 9:13)
df3 <- data.frame(c1 = 1:5, c2 = 8:12)
mylist <- list(df1,df2,df3)
mylist
[[1]]
  c1 c2
1  1  4
2  2  5
3  3  6
4  4  7
5  5  8

[[2]]
  c1 c2
1  6  9
2  7 10
3  8 11
4  9 12
5 10 13

[[3]]
  c1 c2
1  1  8
2  2  9
3  3 10
4  4 11
5  5 12


sapply(mylist, function(x) sapply(x, mean))
   [,1] [,2] [,3]
c1    3    8    3
c2    6   11   10
df1使用嵌套sapply:

df1 <- data.frame(c1 = 1:5, c2 = 4:8)
df2 <- data.frame(c1 = 6:10, c2 = 9:13)
df3 <- data.frame(c1 = 1:5, c2 = 8:12)
mylist <- list(df1,df2,df3)
mylist
[[1]]
  c1 c2
1  1  4
2  2  5
3  3  6
4  4  7
5  5  8

[[2]]
  c1 c2
1  6  9
2  7 10
3  8 11
4  9 12
5 10 13

[[3]]
  c1 c2
1  1  8
2  2  9
3  3 10
4  4 11
5  5 12


sapply(mylist, function(x) sapply(x, mean))
   [,1] [,2] [,3]
c1    3    8    3
c2    6   11   10

df1一个选项是purrr包:

library(purrr)
# some dummy df 1
df1 <- data.frame(col1 = c(1,2,3,4),
                  col2 = c(5,6,7,8))
# some dummy df 1
df2 <- data.frame(col1 = c(1,2,3,4),
                  col2 = c(5,6,7,8))
# bind it to a list
l <- list(df1, df2)
# map colmeans over the list object
purrr::map(l, function(x) colMeans(x))

[[1]]
col1 col2 
 2.5  6.5 

[[2]]
col1 col2 
 2.5  6.5 
库(purrr)
#一些伪DF1

df1一个选项是purrr包:

library(purrr)
# some dummy df 1
df1 <- data.frame(col1 = c(1,2,3,4),
                  col2 = c(5,6,7,8))
# some dummy df 1
df2 <- data.frame(col1 = c(1,2,3,4),
                  col2 = c(5,6,7,8))
# bind it to a list
l <- list(df1, df2)
# map colmeans over the list object
purrr::map(l, function(x) colMeans(x))

[[1]]
col1 col2 
 2.5  6.5 

[[2]]
col1 col2 
 2.5  6.5 
库(purrr)
#一些伪DF1
df1