我有以下数据集:
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')
如何更正代码?
答案 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()