2013-02-27 2 views
0

Я пытаюсь выполнить обычную проверку распределения.batch нормальное распределение тест

Мои данные выглядит следующим образом:

"Date","Department","Discipline","Employee ID","SumOfBillable Hrs" 
"10/09/2012","D","B",50084.00,8.00 
"10/09/2012","D","C",51870.00,10.00 
"10/09/2012","D","E",50216.00,10.00 
"10/09/2012","D","E",53422.00,9.00 
"10/09/2012","D","E",53765.00,10.00 
"14/01/2013","E","Y",53146.00,9.00 
"14/01/2013","E","Y",53202.00,9.00 
"14/01/2013","E","Y",54470.00,9.00 
"14/01/2013","SITE","0",54525.00,9.00 
"14/02/2013","D","C",51870.00,10.00 
"14/02/2013","D","E",50029.00,8.50 
"14/02/2013","D","E",50216.00,9.00 
"14/02/2013","D","E",53422.00,4.00 

Я хочу, чтобы проверить распределение часов по каждому Employee_ID.

Есть ли способ для этого? У меня более 80 IDs. Таким образом, индивидуально принимая каждый ID, и создание/создание описательной статистики для него было бы довольно утомительным.

Thanks

+1

Добавить образец данных, чтобы помочь нам понять и ответить на ваши проблемы – Pop

+2

Вы можете легко разделить «Часы» переменную ваш «EMPLOYEE_ID» переменной и вычислить описательную статистику и генерировать графики с использованием 'lapply' на результирующее список. Покажите некоторые примеры данных, и вы можете получить более конкретный ответ. – A5C1D2H2I1M1N2O1R2T1

+0

Это релевантно: http://stackoverflow.com/questions/7781798/seeing-if-data-is-normally-distributed-in-r, http://stats.stackexchange.com/questions/2492/is-normality -testing-практически-бесполезный – Ben

ответ

1

Вы можете начать с чего-то подобного. Если вам нужно что-то другое, вам нужно будет больше узнать о том, что вы хотите с ним сделать.

data <- read.table(header=T, sep=",", 
text='"Date","Department","Discipline","Employee ID","SumOfBillable Hrs" 
"10/09/2012","D","B",50084.00,8.00 
"10/09/2012","D","C",51870.00,10.00 
"10/09/2012","D","E",50216.00,10.00 
"10/09/2012","D","E",53422.00,9.00 
"10/09/2012","D","E",53765.00,10.00 
"14/01/2013","E","Y",53146.00,9.00 
"14/01/2013","E","Y",53202.00,9.00 
"14/01/2013","E","Y",54470.00,9.00 
"14/01/2013","SITE","0",54525.00,9.00 
"14/02/2013","D","C",51870.00,10.00 
"14/02/2013","D","E",50029.00,8.50 
"14/02/2013","D","E",50216.00,9.00 
"14/02/2013","D","E",53422.00,4.00') 



# Means: 
aggregate(SumOfBillable.Hrs ~ Employee.ID, data=data, FUN=mean) 

# Standard Deviations: 
aggregate(SumOfBillable.Hrs ~ Employee.ID, data=data, FUN=sd) 

# Or a Shapiro normality test: (only works if you have more than 3 observations per Employee.ID 
aggregate(SumOfBillable.Hrs ~ Employee.ID, data=data, FUN=shapiro.test) 
+0

Данные хранятся в БД доступа MS, которую я выгрузил в CSV-файл. Я хочу получить нормальные графики распределения, Std Dev, Mean и запустить тест нормальности для каждого уникального идентификатора сотрудника. – KillerSnail

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