r - data.table 过滤和计数唯一性
问题描述
我有data.table
以下格式
Class Value1 Value2
1 10 20
1 10 15
1 15 0
0 4 40
0 4 50
我想对这三行进行子集化Class =1
,然后计算该子集化数据中的unique
值的数量Value1
。所以我在这种情况下的答案会被2
尝试unique([dt[, 'Value1', by='Class'])
,但没有奏效。谢谢!
解决方案
在这里,是一个选项data.table
,我们通过在 中指定逻辑表达式来对行进行子集化,然后获取列“Value1”i
的值的计数unique
uniqueN
library(data.table)
dt[Class == 1, .(un_val1 = uniqueN(Value1))]
推荐阅读
- git - 从 master 合并后,github 会将所有文件推送到 master 还是仅解决冲突中的单个文件
- json - Handlebars.js:从循环中对 global.json 的索引访问
- regex - 按顺序查找第一个特定字符
- google-apps-script - 在 Google App Script 中,我需要哪些代码来授权 API?
- php - 0 值的增长计算 NaN
- github-actions - 工作流运行时如何识别 GitHub Action 的名称?
- c# - 如何从 EF Core (3.1) 模型访问(依赖注入)服务?
- here-api - HERE 地图入门示例无法加载地图
- c# - Linq从字符串拆分返回带有索引的二维数组
- c++ - C++ 包含带有预编译标头的错误