r - 如何使用 R 根据 A 列中的值组合 B 列中的值?
问题描述
我正在尝试根据 ID 列中的 ID 值组合下面 Item.ID 列中的值,可以使用逗号分隔 Item.ID 列中的值:
数据框(AS):
AS <- data.frame("Index" = c(1,1,2,2,2,3,4), "Item.ID" = c("A1","C2","A3","U4","M5","K6","Y9"))
所需输出
AS_Wide <- data.frame("Index" = c(1,2,3,4), "Item.ID" = c("A1,C2","A3,U4,M5","K6","Y9"))
解决方案
使用基数 R,仅aggregate
和paste
:
AS.Wide <- aggregate(AS$Item.ID, by=list(Index=AS$Index), paste, collapse=",")
如果要保留“Item.ID”变量名,则需要更改它:
names(AS.Wide)[2] <- "Item.ID"
推荐阅读
- python - 在 pandas 行上并行化嵌套的 for 循环
- docker - 多个 Docker 数据根是否可能以及如何?
- ruby-on-rails - 如何在 Rails 中渲染数组
- ios - 当我在 iOS 应用程序上收到静默推送通知时,如何启动应用程序或来电 UI?
- docker - Vue cli。如何使用相同的哈希构建
- jquery - 是否有其他方法可以包含 Jquery 库以在 Angular 和该库之间进行通信?
- python-3.x - 为什么 unittest.mock.patch 可以与 testfixture 一起使用?
- linux - 尝试“strace”时 GDB 的“未加载符号表”
- firebase - firebase login:ci 是否可以访问我的所有项目?
- reactjs - 组件在获取其值之前被渲染