R 如何计算分组行数/观察数?
如何计算分组行数/观察数 我知道这应该是一个简单的问题,但我很难弄明白 我使用的是R 如何计算分组行数/观察数?,r,R,如何计算分组行数/观察数 我知道这应该是一个简单的问题,但我很难弄明白 我使用的是flights数据框,它有年、月、日和单独的航班 我想总结/计算每天的航班数量。 我试过的 flights %>% group_by(year, month, day, flight) %>% summarize(n()) 这给出了每次航班的编号 special_days2 <- flights %>% group_by(year, month, day) %&g
flights
数据框,它有年、月、日和单独的航班
我想总结/计算每天的航班数量。
我试过的
flights %>%
group_by(year, month, day, flight) %>%
summarize(n())
这给出了每次航班的编号
special_days2 <- flights %>%
group_by(year, month, day) %>%
count(flight)
这确实给了我每天的计数,但它并不特定于航班列。所以我不得不假设每天的行数与每天的航班数相对应
使用按其他列分组的航班列,难道没有其他方法可以问我自己“每天有多少航班?”?当我尝试使用nrows()计算行数时
special_days3 <- flights %>%
group_by(year, month, day) %>%
nrow(flight)
特殊日3%
分组单位(年、月、日)%>%
nrow(航班)
^这给了我一个错误
及
特殊日3%
分组依据(年、月、日、航班)%>%
nrow()
只是给了我总行数?我感到困惑,因为nrow似乎是正确的命令,因为它计算行数,但它不起作用
谢谢你的指导
同样关于使用summary、count和n()的主题 我的理解是summary()包含select函数。你怎么知道这些函数是什么?我知道它们是统计函数和n(),但除此之外呢
相反,一些函数必须由summary封装,如n()。还有其他的吗 我试图解释为什么每次尝试都会得到输出:
flights %>% group_by(year, month, day, flight) %>% summarize(n())
在这里,您可以按年
、月
、日
(到目前为止还不错)和航班
(航班
是唯一的,这就是您获得“每次航班的编号”的原因)
或者更好:
flights %>% group_by(year, month, day) %>% summarize(N = n())
或
提供您想要的内容,即您的假设“每天的行数将对应于每天的航班数”是正确的。好的,非常感谢。因此,我必须做出这样的假设,并确保这种假设在这些情况下是正确的。很高兴知道。我想这就是为什么从整体上理解数据集很重要,并考虑如何处理NA值(如果它们存在的话)。我只是想想出一些例外情况,当这种假设太容易做出时,可能是危险的。非常感谢。您必须始终知道数据代表什么!在大多数情况下,行指的是唯一的观察结果,但也有很多例外。
flights %>% group_by(year, month, day, flight) %>% summarize(n())
special_days2 <- flights %>% group_by(year, month, day) %>% count(flight)
flights %>% group_by(year, month, day) %>% summarize(n())
flights %>% group_by(year, month, day) %>% summarize(N = n())
flights %>% group_by(year, month, day) %>% count()