Я пытаюсь использовать sumrize_all, чтобы найти среднее значение каждого идентификатора.Я могу сделать это успешно для столбца идентификатора и столбца, для которого я пытаюсь найти среднее значение (скорость).Однако, когда я использую приведенный ниже код, все остальные столбцы возвращаются как NA.
Вторая проблема заключается в том, что некоторые идентификаторы имеют несколько местоположений сайтов или драйверов.Поэтому мне нужно сохранить усредненную по драйверу скорость, но иметь несколько строк, которые поддерживают уникальный драйвер и местоположение (дата не имеет значения)
Я подумал, что это может быть из-за того, что столбцы, которые возвращаются как NA, не являютсячисловой.Я пытался просмотреть другие вопросы, но не смог найти ответ, который объясняет, почему это происходит и как это исправить.
Я также пытался использовать функцию aggregate (), но то же самое происходит.
Это код, который я сейчас использую:
library(dplyr)
avg <- bind %>%
group_by(ID) %>%
summarize_all(mean)
Вот так выглядят мои данные:
ID Speed Location Driver Date
2 100 a 1 M
2 145 a 1 M
5 155 b 1 M
4 100 a 2 T
3 135 b 2 T
3 156 b 3 T
4 167 b 3 W
Вот как бы я хотел, чтобы окончательный набор данных выглядел:
ID Speed Location Driver Date
2 122.5 a 1 M
5 155 b 1 M
4 133 a 2 T
4 133 b 3 W
3 145.5 b 2 T
3 145.5 b 3 T
Пока мой результат выглядит так:
ID Speed Location Driver Date
2 122.5 NA NA NA
5 155 NA NA NA
4 133 NA NA NA
4 133 NA NA NA
3 145.5 NA NA NA
3 145.5 NA NA NA
с кодом ошибки:
There were 50 or more warnings (use warnings() to see the first 50)