Я транспонировал и заполнил фрейм данных, который теперь выглядит так:
Теперь я пытаюсь перезаписать все значения в столбцах Signal1 и Signal 2 в направлении вверх, группируя их одновременно по идентификатору и дате. Все предыдущие строки должны быть заполнены последним значением для данной группы. Результат должен выглядеть так:
Я попытался решить проблему с помощью dplyr, но не знал, как с этим справиться:
df% ›% group_by (ID, Дата)%›% mutate (...)
Придется выполнить эту операцию на гораздо большем количестве столбцов (Signal1 - Signal 30), поэтому, надеюсь, доступно универсальное решение.
dput
в ваших данных и копированием полученного текста / кода в свой вопрос, не используйте изображения для отображения данных - person starja   schedule 27.07.2020df_new <- df %>% group_by(ID, Date) %>% arrange(Date) %>% mutate(across(starts_with("Signal"), last()))
- person starja   schedule 27.07.2020last()
, вы можете объяснить, пожалуйста? - person linkonabe   schedule 28.07.2020last
.last
возвращает последнее значение для каждого столбца (с учетом группирующей переменной), потому что @Pavel Kaloferov хочет заменить все значения в столбце group / Signal последним значением - person starja   schedule 28.07.2020