在R中找到Flights数据集中的比例

时间:2015-10-19 05:34:22

标签: r dplyr

我正在尝试学习dplyr而我正在使用nywflights13包。我试图找出从Origin(NYC(EWR,JFK))到目的地(西雅图)的航班比例

我期待的输出是,

Origin   n     Prop
JFK     2092     53
EWR     1831     47

我能够以其他方式做到这一点。但我试图找到使用dplyr包。我尝试了以下但没有取得多大成功,

 library("nycflights13")

   flights %>% filter(dest=="SEA") %>% group_by(origin) %>% 
summarise(n=n(origin)) %>% mutate(Prop= n / sum(n))

但我收到的错误为Error in n(origin) : unused argument (origin)

有人可以帮助我在这方面做些什么改正吗?

1 个答案:

答案 0 :(得分:2)

如果同时加载plyrdplyr,我们可能会屏蔽summarisemutate等。最好使用

  dplyr::summarise(n=n())

使用完整代码,

  flights %>% 
    filter(dest=="SEA") %>%
    group_by(origin) %>% 
    dplyr::summarise (n = n()) %>%
    dplyr::mutate(freq = n / sum(n))
 # Source: local data frame [2 x 3]

 #  origin     n      freq
 #  (chr) (int)     (dbl)
 #1    EWR  1831 0.4667346
 #2    JFK  2092 0.5332654