Я не могу найти набор данных, подобный моей проблеме, поэтому я изменил набор данных Iris (набор данных в R), чтобы выглядеть похожим - это достаточно близко!Вложение SUM и MEAN в совокупности для получения средств баллов для каждой группы
data = iris
data$type = gl(5,30,150,labels=c("group1","group2","group3","group4","group5"))
data$ID = gl(30,5,150)
Затем я использовал следующий код
xtabs(Sepal.Length ~ Species + type, aggregate(Sepal.Length ~ Species + type + ID, data, mean))
, что приводит к
type
Species group1 group2 group3 group4 group5
setosa 30.16 19.90 0.00 0.00 0.00
versicolor 0.00 12.20 35.88 11.28 0.00
virginica 0.00 0.00 0.00 26.24 39.64
Я понимаю, что то, что мой код делает это добавление вместе Sepal.Length для каждого ID затем принимая среднее значение этих значений по видам и типу.
Это правильно?
Если нет, как я могу это получить?
Кроме того, как бы получить это, если мои данные таковы, что каждый идентификатор имеет несколько типов? (Не могу понять, как построить это в R)
На самом деле, просто чтобы быть совершенно ясно
То, что я хочу, это код, который суммирует вместе Sepal.Length для каждого идентификатора и типа, то он будет принимать среднее из этих сумм по всем идентификаторам и после средней Sepal.Length по типу и виду/
Я использовал этот код на моих фактических данных и цифры выглядят, как я ожидал! Большое вам спасибо, это замечательно –
Добро пожаловать! 'data.table' - отличный пакет – arvi1000