[英]Simple translation from Python to R
我正在尝试学习 R 但不能完全掌握语法。 Python 对我来说更直观。 我正在使用 R 中的nycflights13
玩具数据集,以及如何弄清楚如何进行这个简单的执行
test = df.groupby('tailnum').agg({'flight':'count','arr_delay':'sum'})
test[(test.flight>=12)].sort_values(by='arr_delay',ascending=False)
并得到
flight arr_delay
tailnum
N15910 280 7317.0
N15980 316 7134.0
N16919 251 6904.0
N228JB 388 6778.0
N14998 230 6087.0
... ... ...
N711ZX 291 -2154.0
N722TW 314 -2199.0
N721TW 318 -2285.0
N718TW 328 -2335.0
N727TW 275 -2642.0
我尝试了以下方法,但数字已关闭。 我错过了一些东西。
test <- flights %>%
group_by(tailnum) %>%
filter(n()>=12) %>%
summarize(total_delay = sum(arr_delay))
test[order(test$total_delay,decreasing = FALSE),]
并得到
tailnum total_delay
<chr> <dbl>
N961UW -1197
N37700 -1148
N3754A -1084
N847VA -1006
...
N179JB 4449
简而言之,python 用户是 R 的完全菜鸟,并试图变得更好,请帮助
默认情况下,R 在取sum
或mean
时不会删除NA
值,添加na.rm. =TRUE
na.rm. =TRUE
并使用arrange
对数据进行排序。
library(nycflights13)
library(dplyr)
flights %>%
group_by(tailnum) %>%
summarise(flight = n(),
arr_delay = sum(arr_delay, na.rm = TRUE)) %>%
filter(flight >= 12) %>%
arrange(desc(arr_delay))
# tailnum flight arr_delay
# <chr> <int> <dbl>
# 1 N15910 280 7317
# 2 N15980 316 7134
# 3 N16919 251 6904
# 4 N228JB 388 6778
# 5 N14998 230 6087
# 6 N192JB 319 5810
# 7 N292JB 322 5804
# 8 N12921 280 5788
# 9 N13958 259 5620
#10 N10575 289 5566
# … with 3,369 more rows
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.