我希望将数据帧中的每一行乘以X行,如行中的值所定义的那样。
数据:
df <- expand.grid(var1 = 1:3, var2 = 1:3)
df$repeatme = c(2, 3, 11, 6, 14, 1, 7, 8, 30)
乘数因子由repeatme
变量确定。
因此,我想成倍增加:
repeatme
== 2); repeatme
== 3); repeatme
== 11); 期望的输出:
var1 var2 repeatme
1 1 1 2
2 1 1 2
3 2 1 3
4 2 1 3
5 2 1 3
6 3 1 11
7 3 1 11
8 3 1 11
...
修改
要清楚,我不会问如何在行内多次变量!我想通过将行本身相乘来改变数据帧的结构/维度!
答案 0 :(得分:2)
df[rep(1:nrow(df), times = df$repeatme), ]