如何串联R数据框中的数字列?
如果我们将值分散在R数据帧的多个列中,则需要将它们组合并创建一个列,这种组合过程称为串联。值的分散性大多发生在数据没有正确格式化为要加载到R中的情况下。因此,要解决此分散性问题,我们需要使用apply函数。
考虑以下数据帧-
示例
x1<-rpois(20,5)输出结果y1<-rpois(20,5)
z1<-rpois(20,5)
a1<-rpois(20,5)
df1<-data.frame(x1,y1,z1,a1)
df1
x1 y1 z1 a11 3 2 1 8
2 5 2 5 8
3 9 4 1 4
4 3 4 4 4
5 5 4 4 4
6 6 5 5 3
7 5 5 5 6
8 7 3 6 4
9 5 7 6 8
10 3 3 4 5
11 7 4 4 8
12 4 3 2 4
13 6 3 6 6
14 7 5 3 1
15 6 9 8 3
16 9 6 11 6
17 5 5 6 6
18 2 4 4 9
19 1 8 2 4
20 11 4 4 2
通过串联df1所有列中的值在df1中创建新列-
示例
df1$all<-apply(df1,1,paste,collapse="")输出结果df1
x1 y1 z1 a1 all1 3 2 1 8 3218
2 5 2 5 8 5258
3 9 4 1 4 9414
4 3 4 4 4 3444
5 5 4 4 4 5444
6 6 5 5 3 6553
7 5 5 5 6 5556
8 7 3 6 4 7364
9 5 7 6 8 5768
10 3 3 4 5 3345
11 7 4 4 8 7448
12 4 3 2 4 4324
13 6 3 6 6 6366
14 7 5 3 1 7531
15 6 9 8 3 6983
16 9 6 11 6 96116
17 5 5 6 6 5566
18 2 4 4 9 2449
19 1 8 2 4 1824
20 11 4 4 2 11442
示例
x2<-sample(LETTERS[1:4],20,replace=TRUE)输出结果y2<-sample(LETTERS[1:4],20,replace=TRUE)
z2<-sample(LETTERS[1:4],20,replace=TRUE)
df2<-data.frame(x2,y2,z2)
df2
x2 y2 z21 D D C
2 D D C
3 C D A
4 D D D
5 A C B
6 A D A
7 B B D
8 B C A
9 D A C
10 A A B
11 B D D
12 A D C
13 D C C
14 C A B
15 A D A
16 A D C
17 D C A
18 A B B
19 D A C
20 D B C
通过串联df2的所有列中的值在df2中创建新列-
示例
df2$all<-apply(df2,1,paste,collapse="")输出结果df2
x2 y2 z2 all1 D D C DDC
2 D D C DDC
3 C D A CDA
4 D D D DDD
5 A C B ACB
6 A D A ADA
7 B B D BBD
8 B C A BCA
9 D A C DAC
10 A A B AAB
11 B D D BDD
12 A D C ADC
13 D C C DCC
14 C A B CAB
15 A D A ADA
16 A D C ADC
17 D C A DCA
18 A B B ABB
19 D A C DAC
20 D B C DBC
以上是 如何串联R数据框中的数字列? 的全部内容, 来源链接: utcz.com/z/342921.html