r - 使用 as.factor 在 R 中对字符进行分组
问题描述
我正在尝试使用库(nycflights13)查找从某些来源延迟的航班的最大数量,但我无法弄清楚如何按“chr”分组
library(nycflights13)
library(dplyr)
flights2 <- mutate(flights,factori = as.factor(flights$origin))
flights2 %>%
filter(dep_delay > 2) %>%
select(dep_delay, factori) %>%
group_by(factori)
输出样本:
我怎样才能将它们组合在一起?我怎样才能找到最大计数?
解决方案
group_by
不会改变数据结构中的任何内容。之后的行数和列数保持不变group_by
。这是你group_by
决定输出之后所做的事情。
要获得max
dep_delay
每个factori
您可以执行的操作:
library(nycflights13)
library(dplyr)
flights2 %>%
filter(dep_delay > 2) %>%
select(dep_delay, factori) %>%
group_by(factori) %>%
summarise(max = max(dep_delay, na.rm = TRUE))
# factori max
#* <fct> <dbl>
#1 EWR 1126
#2 JFK 1301
#3 LGA 911
summarise
通常每组只给出一行,而mutate
行数与原始数据相同。