У меня есть фрейм данных, который выглядит следующим образом:
new_df <- structure(list(intype = structure(c(1L, 1L, 1L, 2L, 2L, 2L), .Label = c("A30",
"A31"), class = "factor"), inerror = c(0.54, 0.14, 0.94, 0, 2.11,
0), inmethod = structure(c(1L, 2L, 3L, 1L, 2L, 3L), .Label = c("A",
"B", "C"), class = "factor")), class = "data.frame", row.names = c(NA,
-6L))
Я хотел бы создать новый фрейм данных, который будет хранить только лучший метод с минимальной ошибкой, но для связей я хотел бы объединить лучшие методы.
Результирующий фрейм данных должен выглядеть следующим образом:
+--------+---------+----------+
| intype | inerror | inmethod |
+--------+---------+----------+
| A30 | 0.14 | B |
| A31 | 0.00 | A,C |
+--------+---------+----------+
В настоящее время я использую
require(plyr)
new_df[new_df$inerror == ddply(new_df, .(intype), summarise, Value = min(inerror))$Value,]
Но это не работает.