在R中的多个数据帧中命名变量

时间:2017-06-14 14:35:39

标签: r

当我计算行表示列表中的foreach数据集时,我希望此新变量(avg)的名称对于列表的每个元素都不同,例如avg_df1avg_df2,或者它占用数据集名称的一部分并将其声明为变量名称。可以通过使用“粘贴”功能来完成吗?

list = list(df1, df2)

list = lapply(list, function(x){
   x$avg = rowMeans(x[,-2])                
   x 
})

1 个答案:

答案 0 :(得分:0)

如果输入列表名称为:

> input <- list(df1 = head(mtcars), df2 = tail(mtcars))
> sapply(input, function(x) rowMeans(x[, -2]))
                  df1     df2
Mazda RX4         32.2980 26.8570
Mazda RX4 Wag     32.3795 26.9683
Datsun 710        25.5580 66.2690
Hornet 4 Drive    42.0135 37.3590
Hornet Sportabout 58.2310 68.6710
Valiant           37.9540 28.4890