按多于 1 列排序时 Dplyr Arrange 出错
Dplyr Arrange Giving Error when Sorting by more than 1 Column
我在使用 dplyr 的“安排”时收到此错误。我正在尝试按降序对 2 个变量进行排序。
Error in `dplyr::arrange()`:
! `desc()` must be called with exactly one argument.
我以前从来没有遇到过这个问题。会不会与另一个包发生冲突?我今天安装了最新版本的 rlang,从那时起我就遇到了“安排”的问题。
这是数据示例以及我使用的代码:
df %>%
arrange(desc(year, amount))
year amount
2022 5
2017 2
2021 2
2022 3
2020 4
2019 3
2017 1
2022 2
2020 1
应该是这个结果。没有?
year amount
2022 5
2022 3
2022 2
2021 2
2020 4
2020 1
2019 3
2017 2
2017 1
您可以使用此代码:
df <- data.frame(year = c(2022, 2017, 2021, 2022, 2020, 2019, 2017, 2022, 2020),
amount = c(5, 2, 2, 3, 4, 3, 1, 2, 1))
df %>%
arrange(desc(year))
输出:
year amount
2022 5
2022 3
2022 2
2021 2
2020 4
2020 1
2019 3
2017 2
2017 1
你应该只在 desc() 中提到一个变量
我在使用 dplyr 的“安排”时收到此错误。我正在尝试按降序对 2 个变量进行排序。
Error in `dplyr::arrange()`:
! `desc()` must be called with exactly one argument.
我以前从来没有遇到过这个问题。会不会与另一个包发生冲突?我今天安装了最新版本的 rlang,从那时起我就遇到了“安排”的问题。
这是数据示例以及我使用的代码:
df %>%
arrange(desc(year, amount))
year amount
2022 5
2017 2
2021 2
2022 3
2020 4
2019 3
2017 1
2022 2
2020 1
应该是这个结果。没有?
year amount
2022 5
2022 3
2022 2
2021 2
2020 4
2020 1
2019 3
2017 2
2017 1
您可以使用此代码:
df <- data.frame(year = c(2022, 2017, 2021, 2022, 2020, 2019, 2017, 2022, 2020),
amount = c(5, 2, 2, 3, 4, 3, 1, 2, 1))
df %>%
arrange(desc(year))
输出:
year amount
2022 5
2022 3
2022 2
2021 2
2020 4
2020 1
2019 3
2017 2
2017 1
你应该只在 desc() 中提到一个变量