如何找到R中n列的行明智总和?

通过使用 rowSums 函数以及使用单个方括号对列进行子集,可以找到 n 列的行明智总和。

例如,如果我们有一个名为 df 的数据框,它包含五列,并且我们想要找到最后三列的行总和,那么我们可以使用以下命令 -

df$Sum_3<-rowSums(df[,3:5])

示例 1

以下代码段创建了一个示例数据框 -

x1<-round(rnorm(20),2)

x2<-round(rnorm(20),2)

x3<-round(rnorm(20),2)

df1<-data.frame(x1,x2,x3)

df1

创建以下数据框 -

    x1     x2    x3

1  -0.66  1.01  -0.44

2  -2.05 -0.47   0.42

3   1.11  1.47   1.04

4  -2.55 -0.42  -0.46

5  -0.50 -1.98  -0.41

6  -2.16 -0.34  -0.55

7   0.29 -0.58   0.42

8  -0.67  1.71  -0.86

9  -0.93  0.00   0.00

10  0.30 -0.87   0.27

11  1.27 -1.60  -0.49

12  0.73  1.16  -1.24

13 -0.71  0.20  -1.18

14 -0.31  1.16   0.24

15 -0.76  0.86  -0.70

16  1.11 -0.25  -0.48

17 -0.88 -0.43   0.10

18  0.50 -2.05   0.36

19 -0.30  0.56  -0.97

20 -1.76 -1.39   1.10

要查找列 x2 和 x3 的行总和,请将以下代码添加到上述代码段中 -

x1<-round(rnorm(20),2)

x2<-round(rnorm(20),2)

x3<-round(rnorm(20),2)

df1<-data.frame(x1,x2,x3)

df1$Sum_x2_x3<-rowSums(df1[,2:3])

df1

输出结果

如果您将上述所有给定的片段作为单个程序执行,它会生成以下输出 -

     x1    x2    x3   Sum_x2_x3

1  -0.66  1.01 -0.44  0.57

2  -2.05 -0.47  0.42 -0.05

3   1.11  1.47  1.04  2.51

4  -2.55 -0.42 -0.46 -0.88

5  -0.50 -1.98 -0.41 -2.39

6  -2.16 -0.34 -0.55 -0.89

7   0.29 -0.58  0.42 -0.16

8  -0.67  1.71 -0.86  0.85

9  -0.93  0.00  0.00  0.00

10  0.30 -0.87  0.27 -0.60

11  1.27 -1.60 -0.49 -2.09

12  0.73  1.16 -1.24 -0.08

13 -0.71  0.20 -1.18 -0.98

14 -0.31  1.16  0.24  1.40

15 -0.76  0.86 -0.70  0.16

16  1.11 -0.25 -0.48 -0.73

17 -0.88 -0.43  0.10 -0.33

18  0.50 -2.05  0.36 -1.69

19 -0.30  0.56 -0.97 -0.41

20 -1.76 -1.39  1.10 -0.29

示例 2

以下代码段创建了一个示例数据框 -

y1<-rpois(20,1)

y2<-rpois(20,5)

y3<-rpois(20,2)

y4<-rpois(20,2)

df2<-data.frame(y1,y2,y3,y4)

df2

创建以下数据框 -

   y1 y2 y3 y4

1  1  6  2  2

2  1  4  1  0

3  1  6  0  2

4  2  9  4  2

5  0  7  1  2

6  1  5  1  1

7  2  0  3  2

8  1  2  5  1

9  1  6  1  5

10 0  3  1  2

11 1  4  2  3

12 1  7  3  1

13 0  8  1  2

14 1  5  2  3

15 0 10  3  0

16 2  2  1  2

17 3  5  4  2

18 0  6  2  1

19 2  2  3  1

20 0  6  1  2

要查找列 y1 和 y2 的行总和,请将以下代码添加到上述代码段中 -

y1<-rpois(20,1)

y2<-rpois(20,5)

y3<-rpois(20,2)

y4<-rpois(20,2)

df2<-data.frame(y1,y2,y3,y4)

df2$Sum_y1_y2<-rowSums(df2[,1:2])

df2

输出结果

如果您将上述所有给定的片段作为单个程序执行,它会生成以下输出 -

   y1 y2 y3 y4 Sum_y1_y2

1  1  6  2  2   7

2  1  4  1  0   5

3  1  6  0  2   7

4  2  9  4  2  11

5  0  7  1  2   7

6  1  5  1  1   6

7  2  0  3  2   2

8  1  2  5  1   3

9  1  6  1  5   7

10 0  3  1  2   3

11 1  4  2  3   5

12 1  7  3  1   8

13 0  8  1  2   8

14 1  5  2  3   6

15 0 10  3  0  10

16 2  2  1  2   4

17 3  5  4  2   8

18 0  6  2  1   6

19 2  2  3  1   4

20 0  6  1  2   6

以上是 如何找到R中n列的行明智总和? 的全部内容, 来源链接: utcz.com/z/358867.html

回到顶部