【问题标题】:How to find the lowest using row_number in R? [duplicate]如何使用 R 中的 row_number 找到最低值? [复制]
【发布时间】:2020-01-04 01:57:50
【问题描述】:

CSV 文件在这里:IMDB movies dataset。 它包含 180 行作为示例。

如何使用 row_number 我将能够找到最低行?

我能找到最长的。如何找到最短的?

#longest movie
(longest <- imdb_movies.csv %>%
    filter(row_number(desc(Runtime_in_min)) == 1))

【问题讨论】:

  • 您可以使用which.maxwhich.min 函数。
  • 如果去掉desc选项会怎样?
  • 您是要查找最短电影的行号,还是仅查找最短电影的行号?更自然的dplyr 方式类似于data %&gt;% arrange(Runtime_in_min) %&gt;% slice(1)
  • imdb_movies %&gt;% filter(Runtime_in_min == min(Runtime_in_min))。这也允许存在不止一部具有相同最短运行时间的电影。
  • top_n(imdb_movies.csv, -1, Runtime_in_min)

标签: r row-number


【解决方案1】:
movies <- imdb_movies.csv
movies[movies$Runtime_in_min == max(movies$Runtime_in_min),] # Longest
movies[movies$Runtime_in_min == min(movies$Runtime_in_min),] # Shortest

【讨论】:

  • 或者只是imdb_movies.csv[which.max(imdb_movies.csv$Runtime_in_min),]
  • 10x r2evans。效果很好!
  • df[nrow(df), ]
  • @tmfmnk,如果已经排序,效果很好,我不知道这是不是假设。
  • 请注意 which.max 只会返回一个结果。如果最大值/最小值相同,则根据您使用的方法,您可能会得到不同的结果。
猜你喜欢
  • 2018-08-18
  • 2023-01-05
  • 2019-01-21
  • 1970-01-01
  • 2021-02-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-05-22
相关资源
最近更新 更多