按 id 组合行制作向量 [英] Combine rows by id making vectors
本文介绍了按 id 组合行制作向量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我无法转换此内容:
Name(id) Food
John Apple
John Beans
Anna Apple
Anna Banana
为此:
Name(id) Food
John c(Apple,Beans)
Anna c(Apple,Banana)
我找到了解决 Python 类似问题的方法:按 id 合并行但不能在 R 上做类似的事情.
I've found a solution to a similar problem with Python: Combine rows by id but couldn't do something similar on R.
推荐答案
# import necessary package
library(dplyr)
# reproduce the data
df <- data_frame(
`Name(id)` = c("John", "John", "Anna", "Anna"),
Food = c("Apple", "Beans", "Apple", "Banana")
)
# group by name and store food in a list
df2 <- df %>%
group_by(`Name(id)`) %>%
summarise(Food = list(Food))
df2
# # A tibble: 2 x 2
# `Name(id)` Food
# <chr> <list>
# 1 Anna <chr [2]>
# 2 John <chr [2]>
这篇关于按 id 组合行制作向量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文