合并r中的行(带分类变量)

时间:2016-08-09 09:52:44

标签: r merge

我有以下数据集:

library(babynames)
hadley <- dplyr::filter(babynames, name == "Hadley")


    year   sex   name     n         prop
   <dbl> <chr>  <chr> <int>        <dbl>
1   1906     M Hadley     6 4.164584e-05
2   1908     M Hadley    16 9.616887e-05
3   1909     M Hadley    14 7.915552e-05
4   1910     M Hadley     5 2.397783e-05
5   1911     M Hadley     9 3.728375e-05
6   1912     M Hadley    11 2.436566e-05
7   1913     M Hadley    10 1.864830e-05
8   1914     M Hadley    15 2.195171e-05
9   1915     M Hadley    14 1.589197e-05
10  1916     M Hadley    14 1.516359e-05
# ... with 147 more rows

在图表上我们可以看到,我们应该合并一些观察结果:

ggplot(hadley, aes(year, n)) + geom_line()

我已尝试过汇总功能,但显然由于分类变量而无法正常工作。

d <- aggregate(x = hadley,by = list(hadley$year),'sum')

如何更正代码?

1 个答案:

答案 0 :(得分:0)

你的问题是,对于男性和女性来说,“哈德利”有单独的条目。您可以单独绘制它们:

ggplot(hadley, aes(year, n, group = sex, colour = sex)) + geom_line()

或者你可以按照你的要求合并它们:

library(dplyr)
hadley2 <- hadley %>%
                group_by(year)%>%
                summarize(numbers=sum(n))


ggplot(hadley2, aes(year, numbers)) + geom_line()