所以我有一个数据框,其中的列具有以下字母等级:C C A B
我想返回最高分的值A,但是当我运行以下代码时,它会显示错误(在输入数值时不会发生)
max(df$grades, na.rm=T)
注意:我已经用以下代码订购了字母等级:
df$grades <- factor(df$grades)
注意:这是我使用的数据:
class <- c(
"blah1",
"blah2",
"blah4",
"blah3"
)
grades <- c("C", "C", "A", "B")
df <- data.frame(class,grades)
任何帮助将不胜感激!
答案 0 :(得分:0)
尝试将dplyr
与magrittr
用于管道:
library(dplyr)
library(magrittr)
然后将数据帧通过管道传递到arrange
函数:
> df %>% arrange(grades)
class grades
1 blah4 A
2 blah3 B
3 blah1 C
4 blah2 C
或者您可以仅选择A(或您喜欢的任何一种):
> df %>% arrange(grades) %>% filter(grades=="A")
class grades
1 blah4 A
或者甚至只挑选那些年级的班级:
> df %>% arrange(grades) %>% filter(grades=="A") %>% select(class)
class
1 blah4