【问题标题】:How to obtain the maximum value for each different unique row? [duplicate]如何获得每个不同的唯一行的最大值? [复制]
【发布时间】:2020-07-16 15:30:04
【问题描述】:

我不是一个非常专业的 R 程序员,我希望获得有关如何检索特定列中每个唯一行的最大值的建议。

让我们举一个我拥有的数据框的简单示例:

   `fruit`   `dessert                difficulty`

1  `apple    cinnamon and apple`         0

2  `apple`     `apple-pie`              `1`

3  `apple`     `strudel`                `2`

4  `banana`    `banana-split`           `0`

5  `banana`    `banana-pie`             `1`

6  `banana`    `banana pancakes`        `2`

7  `banana`    `banana ice-cream`       `3`

对于每一行,我想取每个水果的最大“难度”(例如苹果 = 2)并将这个值用于其他功能。在我的真实数据框中,我不知道水果值的确切名称,但我知道它们像本例中一样重复。

我的想法是执行一个 for 循环,但我想有一个最简单的方法来执行它。

提前致谢!

【问题讨论】:

  • aggregate(difficulty~fruit, df, max)

标签: r dataframe max


【解决方案1】:

也许你想要ave

df <- within(df,difficulty_max <- ave(difficulty,fruit,FUN = max))

这样

> dfout
   fruit            dessert difficulty difficulty_max
1  apple cinnamon and apple          0              2
2  apple          apple-pie          1              2
3  apple            strudel          2              2
4 banana       banana-split          0              3
5 banana         banana-pie          1              3
6 banana    banana pancakes          2              3
7 banana   banana ice-cream          3              3

【讨论】:

    猜你喜欢
    • 2019-06-14
    • 1970-01-01
    • 2017-06-11
    • 2020-11-17
    • 2020-02-22
    • 1970-01-01
    • 2022-11-28
    • 1970-01-01
    • 2016-11-01
    相关资源
    最近更新 更多