【问题标题】:multiply rows by the numerical value of an entry [duplicate]将行乘以条目的数值[重复]
【发布时间】:2015-10-01 16:12:32
【问题描述】:

在 R 中,我有一个矩阵,它有几个分类值。索引大小为 2 平方米、4 平方米、6 平方米,单位数为 1-3,人数为 1-4,然后是一列,其中包含所有事件的汇总计数。

例如:

Size;Units;Pers;Count
4;3;4;3 # three time this row
2;1;1;2 # two times this row
6;2;2;1 # one times this row

如何使最后一列/向量乘以行以便打印出来:

Size;Units;Pers;Count
4;3;4;1
4;3;4;1
4;3;4;1
2;1;1;1
2;1;1;1
6;2;2;1

在电子表格或 R 中。 这是学校的作业,我只是找不到制作最后一个向量的方法(我用它作为常数来乘以前 3 列,但仍然在最后一列条目中保留一个。

【问题讨论】:

  • 好吧,感谢@SamFirke,您应该知道,即使您自己无法弄清楚,您至少应该能够进行研究,因为大多数情况下答案就在那里。

标签: r vector multiplication


【解决方案1】:

我们可以通过 'Count' 列和transform 复制行序列来创建 1 的 'Count' 列。

transform(df1[rep(1:nrow(df1), df1$Count),-4], Count=1)

这也可以通过 library(splitstackshape) 中的包装函数 expandRows 来完成

library(splitstackshape)
transform(expandRows(df1, 'Count'), Count=1)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-05-25
    • 2017-10-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-07
    • 2017-05-08
    • 1970-01-01
    相关资源
    最近更新 更多