遍历数据帧以产生新列

时间:2019-11-16 10:16:35

标签: r loops for-loop

我有10个数据框(Shape1,Shape 2,Shape 3等),每个数据框包含相同的列名。我该如何通过10个数据帧循环执行此命令,以便每个命令包含一个称为“集成”的新列?

Shape1$Integration<-cumtrapz(Shape1$Time, Shape1$CA) 

非常感谢

1 个答案:

答案 0 :(得分:0)

在基数R中,您可以使用mget创建一个数据帧列表,循环遍历并使用transform创建一个新列。

lapply(mget(paste0("Shape", 1:10)), function(x) 
        transform(x, Integration = cumtrapz(Time, CA)))

tidyverse中可以完成

library(tidyverse)
map(mget(paste0("Shape", 1:10)), ~.x %>% mutate(Integration = cumtrapz(Time, CA)))