如何在 R 中的 data.table 对象中查找所有行值都相等的列数?
为了在 R 中的 data.table 对象中查找所有行值都相等的列数,我们可以按照以下步骤操作:
首先,创建一个 data.table 对象。
然后,使用 sum 函数以及 length 和 apply 函数来查找所有行值都相等的列数。
示例 1
创建 data.table 对象
让我们创建一个 data.table 对象,如下所示:
library(data.table) x<-sample(0:1,25,replace=TRUE) y<-sample(0:1,25,replace=TRUE) DT1<-data.table(x,y) DT1
输出
执行上述脚本后,会生成以下输出(由于随机化,此输出在您的系统上会有所不同):
x y
1: 1 0
2: 0 0
3: 1 0
4: 1 1
5: 0 1
6: 1 1
7: 1 1
8: 0 0
9: 0 1
10: 0 0
11: 1 0
12: 0 0
13: 1 0
14: 1 1
15: 1 0
16: 1 0
17: 0 1
18: 0 1
19: 0 0
20: 1 0
21: 1 1
22: 1 1
23: 0 0
24: 0 1
25: 0 1
x y查找所有行值都相等的列数
使用 sum 函数以及 length 和 apply 函数来查找 data.table 对象 DT1 中所有行值都相等的列数:
library(data.table) x<-sample(0:1,25,replace=TRUE) y<-sample(0:1,25,replace=TRUE) DT1<-data.table(x,y) sum(apply(DT1, 1, function(x) length(unique(x))==1))
输出
[1] 12
示例 2
创建 data.table 对象
让我们创建一个 data.table 对象,如下所示:
library(data.table) v1<-rpois(25,1) v2<-rpois(25,1) DT2<-data.table(v1,v2) DT2
输出
执行上述脚本后,会生成以下输出(由于随机化,此输出在您的系统上会有所不同):
v1 v2 1: 0 0 2: 0 0 3: 2 3 4: 2 4 5: 2 0 6: 1 0 7: 2 0 8: 0 1 9: 1 1 10: 0 1 11: 0 1 12: 2 2 13: 0 1 14: 2 0 15: 0 2 16: 0 1 17: 1 2 18: 1 0 19: 2 1 20: 2 0 21: 1 1 22: 1 1 23: 1 0 24: 0 0 25: 2 1 v1 v2
查找所有行值都相等的列数
使用 sum 函数以及 length 和 apply 函数来查找 data.table 对象 DT2 中所有行值都相等的列数:
library(data.table) v1<-rpois(25,1) v2<-rpois(25,1) DT2<-data.table(v1,v2) sum(apply(DT2, 1, function(x) length(unique(x))==1))
输出
[1] 7
广告
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP