【发布时间】:2019-11-29 09:57:26
【问题描述】:
我是 R 的新用户。
我有一堆这样的数据框:
Date ID Value conversion
1 2018-07-16 123450 617 10
2 2018-07-23 123450 476 20
3 2018-07-30 123450 44.6 30
4 2018-08-06 123450 248 10
5 2018-08-13 123450 177 40
所有数据框都有这样的名称模式:
df_1
df_2
df_3
我需要添加一列来计算“转化权重”,这意味着该列将每一行的转化除以转化列的总和(在上面的示例中为 100) .我的目的是稍后计算每个数据帧的加权标准差。 所以,理想情况下,结果应该是这样的,希望结果也可以导出为环境中的数据框(也可以替换原来的):
Date ID Value conversion weight
1 2018-07-16 123450 617 10 0.1
2 2018-07-23 123450 476 20 0.2
3 2018-07-30 123450 44.6 30 0.3
4 2018-08-06 123450 248 10 0.1
5 2018-08-13 123450 177 30 0.3
我试图重现 Apply changes (group by) on multiple dataframes using for loop 的结果
但我收到错误消息:“没有适用于 'mutate_' 的方法应用于类列表对象”。但不确定如何使用 dplyr 或 for 循环或数据框列表来做到这一点..
谢谢!
编辑
当我得到结果(数据框列表)时,我这样做了:
list2env(list ,envir=.GlobalEnv)
但是,我有错误:
names(x) must be a character vector of the same length as x
有谁知道我该如何解决这个问题? 非常感谢!
【问题讨论】:
标签: r dataframe for-loop dplyr