Я полагаю, что для решения вашей проблемы вы можете просто использовать сводное утверждение, например post_datapoint_xyz = first(post_datapoint_xyz)
, для каждого из столбцов post .
То, что также работает, будет просто включать все столбцы post в ваш список group_by
:)
//: вы можете сделать это быстро, записав его как
all_reddits <- all_posts_and_comments %>%
group_by_at(vars(starts_with('post_'))) %>%
summarise(...)
summarise_all
или summarise_at
не поможет вам в этом, так как вы хотите применить две разные функции (вставка и первая) к двум различным группам переменных (комментарии и сообщения) и двум summarise_*
функции не поддерживают это.
В этой ветке есть множество предложений, но они могут быть излишними для вашего варианта использования ...
ОднакоНа заметку: вы, возможно, не окажете себе большую услугу, просто объединяя каждый столбец комментариев по отдельности, поскольку при этом вы теряете связь между ними. (представьте себе один из комментариев, содержащий запятую, вы не сможете отменить это резюме.)
Если вы действительно хотите сохранить полные данные комментариев в своем результате, вы можете рассмотреть возможность создания только один сводный столбец всех комментариев, где вы храните их в виде списка или вложенного файла.
// update: если вы хотите сделать это, вы можете использовать функцию nest например:
all_reddits <- all_posts_and_comments %>%
nest(starts_with('comment_'), .key = 'comments')
Если вы захотите удалить эти комментарии позже, функция unnest
может помочь.
all_posts_and_comments.2 <- all_reddits %>%
unnest(comments)