如何逐行添加 R 数据框的所有列?
要按行添加所有列,我们可以使用 rowSums 函数。
例如,如果我们有一个名为 df 的数据框,其中包含五列 x、y、z、a 和 b,并且我们想逐行添加所有这些列,那么我们可以使用下面提到的命令 -
df$Total_sum<-rowSums(df[,c("x","y","z","a","b")])
示例 1
以下代码段创建了一个示例数据框 -
x1<-rnorm(20)x2<-rnorm(20)
x3<-rnorm(20)
df1<-data.frame(x1,x2,x3)
df1
创建以下数据框 -
x1 x2 x31 -0.71576837 1.93636693 0.03572217
2 0.10588952 -0.18761810 -0.51570157
3 0.71766454 -0.48477796 -0.45083675
4 -0.51649822 -0.04961815 -0.50535820
5 -0.14545158 0.40937268 1.46923050
6 0.89138166 -2.27465679 0.07499376
7 -0.33328696 0.29308439 -1.69285367
8 0.23366842 0.23843342 0.81551733
9 -0.39147373 -0.91625212 0.34213384
10 0.02346723 -0.18371169 1.34624911
11 -0.88525152 -1.58919170 -1.79642822
12 -0.58824620 1.01577620 0.97343742
13 -0.11139240 0.34465454 -0.57030662
14 0.01699374 1.36414048 1.12037818
15 1.02739093 0.43833995 0.35741454
16 -0.05210225 -0.89179920 -0.53029706
17 0.11993986 -0.93023225 1.58035136
18 0.88157577 -0.68255508 -0.23090706
19 1.72864721 0.61535225 1.11270514
20 1.09912321 0.47399401 -0.22800965
要按行添加 df1 的所有列,请将以下代码添加到上述代码段中 -
x1<-rnorm(20)输出结果x2<-rnorm(20)
x3<-rnorm(20)
df1<-data.frame(x1,x2,x3)
df1$Total<-rowSums(df1[,c("x1","x2","x3")])
df1
如果您将上述所有给定的片段作为单个程序执行,它会生成以下输出 -
x1 x2 x3 Total1 -0.71576837 1.93636693 0.03572217 1.25632074
2 0.10588952 -0.18761810 -0.51570157 -0.59743015
3 0.71766454 -0.48477796 -0.45083675 -0.21795017
4 -0.51649822 -0.04961815 -0.50535820 -1.07147457
5 -0.14545158 0.40937268 1.46923050 1.73315160
6 0.89138166 -2.27465679 0.07499376 -1.30828137
7 -0.33328696 0.29308439 -1.69285367 -1.73305624
8 0.23366842 0.23843342 0.81551733 1.28761916
9 -0.39147373 -0.91625212 0.34213384 -0.96559201
10 0.02346723 -0.18371169 1.34624911 1.18600466
11 -0.88525152 -1.58919170 -1.79642822 -4.27087145
12 -0.58824620 1.01577620 0.97343742 1.40096742
13 -0.11139240 0.34465454 -0.57030662 -0.33704449
14 0.01699374 1.36414048 1.12037818 2.50151240
15 1.02739093 0.43833995 0.35741454 1.82314543
16 -0.05210225 -0.89179920 -0.53029706 -1.47419851
17 0.11993986 -0.93023225 1.58035136 0.77005896
18 0.88157577 -0.68255508 -0.23090706 -0.03188636
19 1.72864721 0.61535225 1.11270514 3.45670459
20 1.09912321 0.47399401 -0.22800965 1.34510757
示例 2
以下代码段创建了一个示例数据框 -
y1<-rpois(20,1)y2<-rpois(20,1)
y3<-rpois(20,1)
y4<-rpois(20,1)
df2<-data.frame(y1,y2,y3,y4)
df2
创建以下数据框 -
y1 y2 y3 y41 2 0 1 0
2 0 2 2 1
3 1 1 0 1
4 1 1 1 0
5 0 1 0 0
6 2 1 3 5
7 0 2 0 0
8 0 3 0 2
9 0 0 1 1
10 2 0 1 2
11 1 1 1 3
12 0 1 1 1
13 0 0 1 1
14 1 0 2 1
15 0 1 0 3
16 0 0 0 0
17 1 2 2 1
18 1 2 1 1
19 1 1 1 2
20 1 1 0 1
要按行添加 df2 的所有列,请将以下代码添加到上面的代码段中 -
y1<-rpois(20,1)输出结果y2<-rpois(20,1)
y3<-rpois(20,1)
y4<-rpois(20,1)
df2<-data.frame(y1,y2,y3,y4)
df2$Total_Sum<-rowSums(df2[,c("y1","y2","y3","y4")])
df2
如果您将上述所有给定的片段作为单个程序执行,它会生成以下输出 -
y1 y2 y3 y4 Total_Sum1 2 0 1 0 3
2 0 2 2 1 5
3 1 1 0 1 3
4 1 1 1 0 3
5 0 1 0 0 1
6 2 1 3 5 11
7 0 2 0 0 2
8 0 3 0 2 5
9 0 0 1 1 2
10 2 0 1 2 5
11 1 1 1 3 6
12 0 1 1 1 3
13 0 0 1 1 2
14 1 0 2 1 4
15 0 1 0 3 4
16 0 0 0 0 0
17 1 2 2 1 6
18 1 2 1 1 5
19 1 1 1 2 5
20 1 1 0 1 3
以上是 如何逐行添加 R 数据框的所有列? 的全部内容, 来源链接: utcz.com/z/359254.html