【发布时间】:2018-10-16 19:06:29
【问题描述】:
我有多个数据框,需要计算每个数据框每周的平均值和 SE,并保存为 csv。
在这种情况下,我知道“for 循环”正在工作,因为我总是得到 df3 的 tempdf。我很难为每个 df 创建和命名单独的 csv(例如 Curated_df1.csv、Curated_df2.csv、Curated_df3.csv)。
library(plyr)
list = list (df1, df2, df3)
for (x in list){
tempdf = ddply (x, c("week"),
N = lenght (variable),
mean = mean (variable),
SD = sd (variable),
SE = sd/ sqrt(N))
tempname = paste ("Curated_", x, ".csv", sep = "")
write.csv (tempdf, tempname, na="")
}
【问题讨论】:
-
for (x in 1:list){ -
@Chabo
list在此示例中是一个列表。你不能做1:list(1,2,3)。也许你想要for (i in seq_along(list))之类的东西? -
@MrFlick 好提醒
-
list(df1, df2, df3)是数据帧的实际列表,而不是数据帧的字符串名称。您想通过变量的(字符串)名称来引用变量。见Access variable value where the name of variable is stored in a string in R。 无论如何,你的答案是奇怪的get()