r - R中的聚合字符串
问题描述
我有一个数据框,其中一列是字符串名称(v1),第二列是字符串值(v2),我想汇总这些条目并将它们的字符串值相加。(V1 和 V2 是列表)
V1 和 V2 是列表
trp_str
V1 V2
1 a,x,v 0.07128713
2 b,x,c 0.06336634
3 c,x,v 0.04752475
4 c,x,v 0.04752475
5 d,x,v 0.06336634
6 a,x,v 0.07128713
i want to get like this
V1 V2
1 a,x,v 0.14257426
2 b,x,c 0.06336634
3 c,x,v 0.0950495
4 d,x,v 0.06336634
当我使用 aggregate(trp_str$V1, by=list(V2=trp_str$V2), FUN=sum) 时发生以下错误 Aggregate.data.frame(as.data.frame(x), ...) 中的错误:参数必须具有相同的长度
解决方案
这是非常简单的操作。这个网站上已经回答了很多
这应该适合你
library(dplyr)
df <- data.frame(V1 = c('a,x,v','b,x,c', 'c,x,v', 'c,x,v', 'd,x,v', 'a,x,v'),
V2 = c(0.07128713, 0.06336634, 0.04752475, 0.04752475, 0.06336634,0.07128713))
df %>% group_by(V1) %>% summarise(Total = sum(V2))
基本上,您按 V1 列分组,然后使用该summarise
函数来sum
增加 V2 列中的值。在这里,我命名了包含总和的列,Total
但您可以随意命名。
推荐阅读
- class - 如何从flutter中的另一个类访问类方法?
- javascript - 如何从一个组件调用函数到另一个组件?反应
- python - 3D scatter plot legend error from KMeans "No handles with labels found to put in legend"
- javascript - document.getElementById("FileUpload1"); is giving null/undefined value in IE
- javascript - 事件目标转化随时显示为 0
- python - 删除作业后Python APSCheduler抛出异常
- python - 将自定义训练的 NER 模型与 Stanford CoreNLP 中的现有默认模型集成
- laravel - 如何使用 laravel eloquent 连接 3 个表?
- python - 基于两列的排名值
- spring-boot - Spring Batch Job 调度程序在多次运行后停止执行