r - 在R中如何合并列表
问题描述
我有一个清单
$true
[1] 0
$false
[1] 183
$false
[1] 0
$true
[1] 110
我需要删除重复和归零的元素。
理想情况下,我会将所有具有相同名称的元素相加,但考虑到它们是零,我可以将它们排除在外,得到这样的结果:
$false
[1] 183
$true
[1] 110
谢谢。
解决方案
tapply()
如果我们使用列表,我们可以使用unlist
列表名称作为组。
tapply(unlist(x), names(x), sum, simplify = FALSE)
# $false
# [1] 183
#
# $true
# [1] 110
如果不需要获取列表结果,我们可以 drop simplify
。
tapply(unlist(x), names(x), sum)
# false true
# 183 110
x
你的清单在哪里。
推荐阅读
- javascript - WebRTC 远程流大小太大
- wpf - 为什么 TargetType ="{x:Type igEditors:XamNumericEditor}" 工作
- javascript - 在内部导航菜单项上强制刷新页面
- c# - 在单个方法上处理所有复选框事件
- ios - 找不到“RCTSwiftBridgeModule.h”文件
- sql - SQL Server 中的多个值
- c - 如何检测旋转的弧度?
- r - 从数据框中随机选择特定值
- node.js - 如何在 Firebase 云功能中使用 adminSdk 为 Firestore 文档创建文档 ID?
- python - 比较两个数据框,然后根据另一个数据框向其中一个数据框添加新列