2013-06-19 2 views
0

Я пытаюсь нормализовать штрих-код данных на основе вторичных данных.
Например, начиная со следующей таблицей в data.frame данных:R/ggplot2: нормализовать штриховой график при подсчете вторичных данных

ID Classification 
1 neutral 
1 low 
2 medium 
2 high 
2 high 
3 neutral 
3 neutral 
4 medium 
4 low 
5 medium 

Полученный barplot будет иметь ось х баров «нейтральный», «низкий», «средний» и «высокий», с высоты оси y, определяемые счетчиком классификации, деленным на счетчик уникальных идентификаторов в пределах Классификации. т.е .:

neutral = 3/2 
low = 2/2 
medium = 3/3 
high = 2/1 

Я знаю, что делать просто отсчитывает следующие работы:

levels(data$Classification) <- c("neutral", "low", "medium", "high") 
qplot(Classification, fill = Classification, data = data, geom = "bar") + guides(fill = FALSE) 

Но я в недоумении, пытаясь понять, как нормализовать данные, как я описал.

Благодарим за помощь!

+0

Что вы подразумеваете под «нормализацией»? – dickoa

+0

«Нормализовать», вы имеете в виду, что хотите получить распределение вероятности из него? –

+0

Вы должны назвать это чем-то иным, чем «нормализовать», поскольку он не выполняет ни одну из двух операций, которые обычно называются «нормализация». –

ответ

0

Если по «нормализации» вы имеете в виду получить распределение вероятностей:

netural 
low 
medium 
high 

Тогда для каждого свойства, вы берете его значение и разделить его на сумму всех значений (один для каждого свойства). Основываясь на вашем примере, нейтральный бы стать:

neutral = neutral/(neutral + low + medium + high) 
        or 
neutral = 3/2/(3/2 + 2/2 + 3/3 + 2/1) 

И как я сказал, вы могли бы сделать это для трех других лейблов, тоже, чтобы дать вам appx:

neutral = .273 
low = .182 
medium = .182 
high = .363 
0

Учитывая ваши данные в виде кадр данных с именем DF,

library(plyr) 
u <- ddply(DF, "Classification", summarise, n = length(unique(ID)), frq = length(ID)) 
mutate(u, ratio = frq/n) 

Есть целый ряд других способов сделать это с каким-либо из основных функций реферирования и/или пакетов.

Смежные вопросы