2015-09-22 2 views
1

Мне нужно посмотреть относительное изменение в 2 группах данных, которые имеют очень разные масштабы. Я бы поэтому подумал, что, установив свое первое значение на 100%, а затем создав пропорцию к этому значению для каждой группы, это путь вперед. Затем я смогу создать линейную диаграмму, чтобы показать относительное движение.
Я бы назвал это индексной диаграммой, поэтому, возможно, пропустил существующие вопросы.Создать индексную диаграмму в R - относительная стартовая точка

Однако я не знаю, как установить данные в R для этого.

Мои агрегированные данные ниже. Я хочу, чтобы каждый из 1999 года составлял 100%, а последующие годы составляли% от этого.

> Totals 
    year fips Emissions 
1 1999 06037 6109.6900 
2 2002 06037 7188.6802 
3 2005 06037 7304.1149 
4 2008 06037 6421.0170 
5 1999 24510 403.7700 
6 2002 24510 192.0078 
7 2005 24510 185.4144 
8 2008 24510 138.2402 

я, вероятно, хотят, чтобы добавить гистограмму за ней, чтобы показать, как взвешивание слишком относительное изменение гораздо более драматичным для небольших данных. Подсказки по этому тоже ценятся, но я не искал этого, но, поскольку вышеперечисленное является основной проблемой ИМО.

Цените свою помощь. Джеймс

+0

Спасибо Бергант. Это отсортировано. Однако, когда я создаю график, мои значения x автоматически выбираются как 2000 и на 2 года. Я попытался настроить это с помощью scale_x_continuous (breaks = c (1: 4), labels = c («1999» и т. Д.), Но я тогда вообще не получаю ярлыков ... Можете ли вы посоветовать? –

ответ

0

Например с dplyr:

library(dplyr) 
dat <- 
    df1 %>% 
    group_by(fips) %>% 
    mutate(ind = Emissions/first(Emissions)) 

А с помощью ggplot2 построить линейную диаграмму:

library(ggplot2) 
    ggplot(dat, aes(x = year, y = ind, color = as.factor(fips))) + 
    geom_line() 
Смежные вопросы