Вы должны быть в состоянии сделать это с 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)