首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >子列表中的项与它们所属的类别相加,计算主列表。

子列表中的项与它们所属的类别相加,计算主列表。
EN

Stack Overflow用户
提问于 2016-06-28 07:58:35
回答 2查看 234关注 0票数 0

我想将值附加到R中的江河图中的标签上,这是我问题的第二个(令人困惑的)部分,我决定分成两个问题,第一个问题是:Sum each list of numerical values within a list

我有一个值列表,用于显示节点之间的流,如下所示:

代码语言:javascript
运行
复制
edges <- list( A= list( C= 10, E= 5 ), 
               B= list( C= 10 ), 
               C=list(D = 13, E = 7 )) 

问题:如何实现子列表中的项目之和,计算整个列表,如:

代码语言:javascript
运行
复制
C 20   
D 13
E 12 

我认为这些项目应该首先提取到一个数据框架中,然后进行总结。或者,是否有一些公式可以将子列表分解,然后根据类别(C、D、E)对其中包含的项进行求和。

我想知道如何使用函数,但是对几个子列表进行处理似乎非常复杂。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-06-28 08:02:47

代码语言:javascript
运行
复制
library(data.table)

colSums(rbindlist(edges, fill=T), na.rm=T)
# C  E  D 
#20 12 13 

或者:

代码语言:javascript
运行
复制
library(dplyr)

colSums(bind_rows(edges), na.rm=T)
# C  E  D 
#20 12 13 
票数 3
EN

Stack Overflow用户

发布于 2016-06-28 08:36:04

我们可以使用base R

代码语言:javascript
运行
复制
un1 <- unlist(edges)
tapply(un1, sub(".*\\.", "", names(un1)), FUN = sum)
#  C  D  E 
# 20 13 12 
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38070362

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档