У меня есть данные, которые выглядят следующим образом:
ID FACTOR_VAR INT_VAR
1 CAT 1
1 DOG 0
Я хочу агрегировать по ID
так, чтобы результирующий кадр данных содержал строку whole , которая удовлетворяет моему условию агрегирования. Поэтому, если я агрегирую по max
из INT_VAR
, я хочу вернуть всю первую строку:
ID FACTOR_VAR INT_VAR
1 CAT 1
Следующее не будет работать, потому что FACTOR_VAR
является фактором:
new_data <- aggregate(data[,c("ID", "FACTOR_VAR", "INT_VAR")], by=list(data$ID), fun=max)
Как я могу это сделать? Я знаю, что в dplyr есть группа по функциям, но, к сожалению, я работаю на компьютере, для которого загрузка пакетов занимает много времени. Поэтому я ищу способ сделать это только с ванильным R.