2015-10-15 2 views
1

просто вам нужно помочь мне с чем-то, что, вероятно, очень глупо, но, к сожалению, не работает!Сплошная сумма каждого наблюдения

Мне нужно составить график, который показывает общую сумму каждой команды.

Это то, что я получаю.

enter image description here

Используя этот код:

plot(factor(Data$Agency), Data$TMM) 

Когда мне нужно просто график СУММАРНУЮ суммой баллов каждой команды сделали. Не график, который говорит, что меньше и больше всего команда сделала. Просто попросите график рассказать ВСЕГО о точках для каждой команды.

Проблема только в команде Lightblue.

Как и в других командах, есть только один объект ponints.

Это могло бы помочь вам.

Команды названы как Agencys.

Data$TMM 
[1] 720 540 400 540 360 720 360 300 400 
> Data$Agency 
[1] "Lightblue" "Lightblue" "IHC"  "Lightblue" "Lightblue" "Lightblue" "Lightblue" 
[8] "Sociate" "Allure" 

СПАСИБО !!!

+0

Это потому, что все команды, за исключением Light Blue имеют только один счет, в то время как Light Blue имеет 6 баллов. Вы должны суммировать точки из всех наблюдений за команду, а затем построить –

ответ

1

Если предположить, что следующее ваши данные:

Data <- data.frame(TMM = c(720, 540, 400, 540, 360, 720, 360, 300, 400), 
        Agency= c("Lightblue", "Lightblue", "IHC", "Lightblue", "Lightblue", "Lightblue", "Lightblue", 
          "Sociate", "Allure")) 

> Data 
    TMM Agency 
1 720 Lightblue 
2 540 Lightblue 
3 400  IHC 
4 540 Lightblue 
5 360 Lightblue 
6 720 Lightblue 
7 360 Lightblue 
8 300 Sociate 
9 400 Allure 

Во-первых, вам нужно агрегировать данные, используя aggregate или любой другой метод агрегирования, и тогда я полагаю, что вам нужно нанести их как бары (что имеет больше смысла, поскольку у вас есть количество данных) - в отличие от ящиков по умолчанию, когда x является фактором (вы не должны использовать ящики, если у вас есть только одна точка).

#this aggregates TMM by the Agency 
data2 <- aggregate(TMM ~ Agency, data=Data, FUN=sum) 

#first argument is the values and names.arg contains the names of the bars 
barplot(data2$TMM, names.arg=data2$Agency) 

Выход:

enter image description here

+0

Абсолютно совершенный! Большое спасибо! Thats exaccty, что я хотел, чтобы он выглядел как –

+0

Добро пожаловать, рад, что я мог бы помочь :) – LyzandeR

1
library(plyr)  
Data = data.frame(TMM = c(720, 540, 400, 540, 360, 720, 360, 300, 400),Agency = c("Lightblue" ,"Lightblue", "IHC", "Lightblue", "Lightblue", "Lightblue", "Lightblue","Sociate" , "Allure")) 

res = ddply(Data, .(Agency), summarise, val = sum(TMM)) 
p = plot(factor(res$Agency), res$val) 
plot(p) 

enter image description here

+0

Это было очень полезно спасибо! –

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