根据在一个衬里中删除 NA 的列的最大值获取名称
Getting name based on max value of a column with NA removed in one liner
我正在尝试获取具有最大值快速睡眠的动物的名称。这就是我现在正在做的,但希望有更好的方法 returns 精确值。
msleep = ggplot2::msleep
msleep[order(msleep$sleep_rem, na.last=TRUE, decreasing=TRUE), ]
上面returns我是排序后的数据,但是在Rstudio的控制台中很难看到。有更好的方法吗?
我们可以使用 which.max
获取 'sleep_rem' 中最大值的索引,并使用它来对 'name'
进行子集化
msleep$name[which.max(msleep$sleep_rem)]
#[1] "Thick-tailed opposum"
为了更好地查看,您可以 arrange
数据和 select 仅感兴趣的列 -
library(dplyr)
msleep %>% arrange(desc(sleep_rem)) %>% select(name, sleep_rem)
# A tibble: 83 x 2
# name sleep_rem
# <chr> <dbl>
# 1 Thick-tailed opposum 6.6
# 2 Giant armadillo 6.1
# 3 North American Opossum 4.9
# 4 Big brown bat 3.9
# 5 European hedgehog 3.5
# 6 Thirteen-lined ground squirrel 3.4
# 7 Domestic cat 3.2
# 8 Long-nosed armadillo 3.1
# 9 Golden hamster 3.1
#10 Golden-mantled ground squirrel 3
# … with 73 more rows
我正在尝试获取具有最大值快速睡眠的动物的名称。这就是我现在正在做的,但希望有更好的方法 returns 精确值。
msleep = ggplot2::msleep
msleep[order(msleep$sleep_rem, na.last=TRUE, decreasing=TRUE), ]
上面returns我是排序后的数据,但是在Rstudio的控制台中很难看到。有更好的方法吗?
我们可以使用 which.max
获取 'sleep_rem' 中最大值的索引,并使用它来对 'name'
msleep$name[which.max(msleep$sleep_rem)]
#[1] "Thick-tailed opposum"
为了更好地查看,您可以 arrange
数据和 select 仅感兴趣的列 -
library(dplyr)
msleep %>% arrange(desc(sleep_rem)) %>% select(name, sleep_rem)
# A tibble: 83 x 2
# name sleep_rem
# <chr> <dbl>
# 1 Thick-tailed opposum 6.6
# 2 Giant armadillo 6.1
# 3 North American Opossum 4.9
# 4 Big brown bat 3.9
# 5 European hedgehog 3.5
# 6 Thirteen-lined ground squirrel 3.4
# 7 Domestic cat 3.2
# 8 Long-nosed armadillo 3.1
# 9 Golden hamster 3.1
#10 Golden-mantled ground squirrel 3
# … with 73 more rows