У меня есть кадр df
данных со строками, которые являются дубликатами для столбца имен, но не для столбца значений:среднее между дублированных строк в R
name value etc1 etc2
A 9 1 X
A 10 1 X
A 11 1 X
B 2 1 Y
C 40 1 Y
C 50 1 Y
мне нужно объединить повторяющиеся имена в одну строку, в то время как вычисляя среднее значение над столбцом значений. Ожидаемый результат заключается в следующем:
name value etc1 etc2
A 10 1 X
B 2 1 Y
C 45 1 Y
Я пытался использовать df[duplicated(df$name),]
, но, конечно, это не дает мне среднее за дубликатами. Я хотел бы использовать aggregate()
, но проблема в том, что часть FUN этой функции будет применяться ко всем другим столбцам, а также, среди прочих проблем, она не сможет вычислить контент char. Поскольку все остальные столбцы имеют одинаковый контент по «дубликатам», мне нужно, чтобы они были агрегированы, как и столбцы имен. Любые намеки ...?
ли ваши другие столбцы 'etcX' также гарантированно быть одинаковым для строк с тем же' name'? –
@HongOoi Да, я так считаю, я отфильтровал их на предыдущем шаге, чтобы получить аналогичное содержимое. – biohazard
@agstudy Извините, ожидаемый результат уже был включен в мой пост, но я забыл сказать это в моем предложении. Это было исправлено пользовательскими метриками. – biohazard