【发布时间】:2021-04-01 13:20:18
【问题描述】:
我想遍历九个数据集,执行计算,并输出不同的文件名。
现有代码:
list <- c(corporate_service, finance, its, law, market_services, operations, president, member_services, System_Planning)
Calc <- function(list){
list %>% filter(Total_Flag == 1) %>%
select(Element, Amount, Total)
}
lapply(list, Calc)
我想遍历每个数据集并应用上面的函数。更具体地说,我想将每个已处理的数据框重新命名为不同的名称。有没有办法做到这一点?我还应该注意,这段代码对我不起作用 - 有什么明显的错误吗?
谢谢
【问题讨论】:
-
corporate_service、finance等变量是data.frames吗?如果是这样,您应该只使用list()而不是c()将它们放入一个集合中。wage_allocation和Calc应该是相同的功能吗?如果您包含一个简单的reproducible example,其中包含可用于测试和验证可能解决方案的示例输入和所需输出,则更容易为您提供帮助。 -
corporate_service 和 finance 是 data.frame 的名称。哎呀,是的,它们是相同的功能。我编辑了它。
-
应该是
list <- list(corporate_service, finance,...)而不是list <- c(corporate_service, finance, ...)那么转换应该可以正常工作。 -
注意,最好不要使用函数名,例如
list作为变量名,因为它令人困惑。 -
请注意,最好不要保存单独类似结构的数据帧,而是继续使用此类元素的
list。看到这个canonical answer。