如何通过加法合并 R 数据框中的两行?


若要通过加法合并 R 数据框中的两行,我们可以按照以下步骤操作 -

  • 首先,创建一个数据框。

  • 然后,使用加号 (+) 将两行相加,并将加法结果存储在其中一行中。

  • 之后,通过用方括号选取子集的方式,删除不必要的那行。

示例

创建数据框

让我们创建一个数据框,如下所示 -

x<-rpois(25,1)
y<-rpois(25,1)
z<-rpois(25,1)
df<-data.frame(x,y,z)
df

输出

执行以上脚本将生成以下输出(此输出因随机变化而可能因系统而异)-

   x y z
1  1 1 0
2  1 1 0
3  1 1 2
4  2 0 1
5  2 1 1
6  2 0 1
7  0 1 0
8  1 0 3
9  1 1 4
10 0 0 2
11 0 0 0
12 1 0 3
13 0 0 2
14 1 4 2
15 1 3 3
16 0 2 1
17 1 1 1
18 2 3 1
19 2 1 1
20 1 2 0
21 1 1 0
22 1 0 0
23 2 0 0
24 0 0 1
25 2 0 0

相加两行

使用加号将第 1 行和第 2 行相加,然后将和存储在第 1 行中 -

x<-rpois(25,1)
y<-rpois(25,1)
z<-rpois(25,1)
df<-data.frame(x,y,z)
df[1,]<-df[1,]+df[2,]
df

输出

   x y z
1  2 2 0
2  1 1 0
3  1 1 2
4  2 0 1
5  2 1 1
6  2 0 1
7  0 1 0
8  1 0 3
9  1 1 4
10 0 0 2
11 0 0 0
12 1 0 3
13 0 0 2
14 1 4 2
15 1 3 3
16 0 2 1
17 1 1 1
18 2 3 1
19 2 1 1
20 1 2 0
21 1 1 0
22 1 0 0
23 2 0 0
24 0 0 1
25 2 0 0

删除不必要的那行

使用方括号选取子集的方式,从数据框 df 中删除第 2 行 -

x<-rpois(25,1)
y<-rpois(25,1)
z<-rpois(25,1)
df<-data.frame(x,y,z)
df[1,]<-df[1,]+df[2,]
df[-2,]

输出

   x y z
1  2 2 0
3  1 1 2
4  2 0 1
5  2 1 1
6  2 0 1
7  0 1 0
8  1 0 3
9  1 1 4
10 0 0 2
11 0 0 0
12 1 0 3
13 0 0 2
14 1 4 2
15 1 3 3
16 0 2 1
17 1 1 1
18 2 3 1
19 2 1 1
20 1 2 0
21 1 1 0
22 1 0 0
23 2 0 0
24 0 0 1
25 2 0 0

更新于: 16-11-2021

7 千次浏览量

开启你的职业生涯

完成课程即可获得认证

开始
广告