如何提取R中至少有一个非重复的列?
要从具有至少一个非重复项的 R 数据框中提取列,我们可以使用 Filter 函数。
例如,如果我们有一个名为 df 的数据框,其中包含一些具有重复值的列和不包含至少一个非重复值的列,那么我们可以使用以下命令提取具有至少一个非重复值的列 -
Filter(var,df)
示例 1
以下代码段创建了一个示例数据框 -
x1<-rep(10,20)x2<-rpois(20,1)
x3<-rpois(20,5)
x4<-rep(1,20)
df1<-data.frame(x1,x2,x3,x4)
df1
创建了以下数据框
x1 x2 x3 x41 10 1 2 1
2 10 1 3 1
3 10 1 7 1
4 10 2 5 1
5 10 0 2 1
6 10 1 6 1
7 10 0 7 1
8 10 0 6 1
9 10 0 3 1
10 10 0 6 1
11 10 0 9 1
12 10 0 7 1
13 10 0 6 1
14 10 1 3 1
15 10 1 5 1
16 10 1 5 1
17 10 2 8 1
18 10 0 6 1
19 10 1 1 1
20 10 1 4 1
要在上面创建的数据框中提取至少有一个非重复项的 df1 列,请将以下代码添加到上面的代码段中 -
x1<-rep(10,20)输出结果x2<-rpois(20,1)
x3<-rpois(20,5)
x4<-rep(1,20)
df1<-data.frame(x1,x2,x3,x4)
Filter(var,df1)
如果您将上述所有给定的片段作为单个程序执行,它会生成以下输出 -
x2 x31 1 2
2 1 3
3 1 7
4 2 5
5 0 2
6 1 6
7 0 7
8 0 6
9 0 3
10 0 6
11 0 9
12 0 7
13 0 6
14 1 3
15 1 5
16 1 5
17 2 8
18 0 6
19 1 1
20 1 4
示例 2
以下代码段创建了一个示例数据框 -
y1<-round(rnorm(20),1)y2<-round(rnorm(20),1)
y3<-rep(0.5,20)
y4<-rep(0.8,20)
df2<-data.frame(y1,y2,y3,y4)
df2
创建了以下数据框
y1 y2 y3 y41 0.7 0.3 0.5 0.8
2 0.4 -1.7 0.5 0.8
3 -0.7 -0.3 0.5 0.8
4 0.5 -1.4 0.5 0.8
5 0.7 -0.8 0.5 0.8
6 0.3 0.4 0.5 0.8
7 -0.8 0.5 0.5 0.8
8 0.3 0.5 0.5 0.8
9 0.4 -0.1 0.5 0.8
10 0.6 -0.3 0.5 0.8
11 -0.8 -1.3 0.5 0.8
12 0.6 -0.9 0.5 0.8
13 2.4 1.0 0.5 0.8
14 -0.6 0.4 0.5 0.8
15 1.8 0.9 0.5 0.8
16 -1.4 0.6 0.5 0.8
17 0.6 -0.1 0.5 0.8
18 0.6 0.7 0.5 0.8
19 0.5 -1.2 0.5 0.8
20 -1.0 0.7 0.5 0.8
要提取在上述创建的数据框中至少有一个非重复项的 df2 列,请将以下代码添加到上述代码段中 -
y1<-round(rnorm(20),1)输出结果y2<-round(rnorm(20),1)
y3<-rep(0.5,20)
y4<-rep(0.8,20)
df2<-data.frame(y1,y2,y3,y4)
Filter(var,df2)
如果您将上述所有给定的片段作为单个程序执行,它会生成以下输出 -
y1 y21 0.7 0.3
2 0.4 -1.7
3 -0.7 -0.3
4 0.5 -1.4
5 0.7 -0.8
6 0.3 0.4
7 -0.8 0.5
8 0.3 0.5
9 0.4 -0.1
10 0.6 -0.3
11 -0.8 -1.3
12 0.6 -0.9
13 2.4 1.0
14 -0.6 0.4
15 1.8 0.9
16 -1.4 0.6
17 0.6 -0.1
18 0.6 0.7
19 0.5 -1.2
20 -1.0 0.7
以上是 如何提取R中至少有一个非重复的列? 的全部内容, 来源链接: utcz.com/z/351602.html