2014-06-08 3 views
1

У меня есть матрица размером 6 * 4 и складывается в матрицу из двух столбцов. Первый столбец - это числовые значения, а второй столбец - имена категорий. Я хочу рассчитать среднее значение из каждой категории, но я не знаю, как получить символы из столбца 2.Как распознать категорию из матрицы

+0

Вы имеете в виду, что у вас есть двухколоночный кадр данных? –

+0

Добро пожаловать в переполнение стека. Всегда лучше включить [воспроизводимый пример] (http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example) с вашим вопросом. Покажите примеры данных и ожидаемый результат. Это помогает четко определить, что вы хотите. – MrFlick

ответ

1

Чтобы агрегировать значения в кадре данных по категориям, вы используете функцию aggregate. Рассмотрим эти искусственные данные:

x <- data.frame(values=sample(1:6), categories=sample(c('A','B'), 6, replace=TRUE)) 
x 
## values categories 
## 1  4   B 
## 2  1   B 
## 3  5   A 
## 4  3   B 
## 5  6   A 
## 6  2   A 

aggregate(values~categories, data=x, FUN=mean) 
## categories values 
## 1   A 4.333333 
## 2   B 2.666667 
Смежные вопросы