我是r的新手,有一个问题,我有一个数据集:
name surname year_of_birth monthly_salary
a a 1970 2540
b b 1971 5730
c c 1970 5400
d d 1972 4350
e e 1973 6283
f f 1971 4358
g g 1973 7834
h h 1974 4987
我想画一个条形图,上面有年薪的平均值和每两年(1970年和1971年((1972年和1973年(要选择的数据……最好的方法是什么?
我创建了一个带有年份的数据子集,并计算了平均值,但是否有可能用所有这些子集创建一个条形图?或者应该采取不同的做法?
感谢任何帮助或建议。
您应该能够使用aggregate
和barplot
执行此操作。我在数据中添加了一列,以指定您的两年间隔。不过,您可以根据需要定义这些。
> year <- c(1970,1971,1970,1972,1973,1971,1973,1974)
> salary <- c(2540,5730,5400,4350,6283,4358,7834,4987)
> x <-data.frame(year, salary)
> x$yearlabel <- paste(2*floor(year/2), 2*floor(year/2)+1, sep = "-")
> x
year salary yearlabel
1 1970 2540 1970-1971
2 1971 5730 1970-1971
3 1970 5400 1970-1971
4 1972 4350 1972-1973
5 1973 6283 1972-1973
6 1971 4358 1970-1971
7 1973 7834 1972-1973
8 1974 4987 1974-1975
> x2 <- aggregate(x$salary, list(x$yearlabel), mean)
> x2
Group.1 x
1 1970-1971 4507.000
2 1972-1973 6155.667
3 1974-1975 4987.000
> barplot(x2$x, names.arg = x2$Group.1)