根据 R 中的另一个数值列查找列值的总和。
要根据 R 中的另一个数字列查找列值的总和,我们可以使用 with 函数并通过在单个方括号的帮助下对列进行子集来定义总和。
例如,如果我们有一个名为 df 的数据框,其中包含两列 X 和 Y,那么当 Y 大于 10 时,我们可以使用以下命令找到 X 中的值的总和 -
(df,sum(X[Y10]))
示例 1
以下代码段创建了一个示例数据框 -
x1<-rpois(20,2)y1<-rpois(20,2)
df1<-data.frame(x1,y1)
df1
创建了以下数据框
x1 y11 1 1
2 0 1
3 0 1
4 2 3
5 3 1
6 0 2
7 7 2
8 3 1
9 2 3
10 2 1
11 3 5
12 3 2
13 4 2
14 0 4
15 1 5
16 2 1
17 3 3
18 2 0
19 3 1
20 1 2
要在上面创建的数据框中找到 x1 介于 1 和 4 之间时 y1 值的总和,请将以下代码添加到上述代码段中 -
x1<-rpois(20,2)输出结果y1<-rpois(20,2)
df1<-data.frame(x1,y1)
with(df1,sum(y1[x1>1 & x1<4]))
如果您将上述所有给定的片段作为单个程序执行,它会生成以下输出 -
[1] 23
示例 2
以下代码段创建了一个示例数据框 -
x2<-rnorm(20)y2<-rnorm(20)
df2<-data.frame(x2,y2)
df2
创建了以下数据框
x2 y21 1.14755939 0.2739985
2 0.33167239 -0.2753514
3 -0.01889732 2.0004839
4 -0.21294107 -1.2277250
5 -1.01230915 -0.4567277
6 0.30736328 0.8563572
7 0.59352845 0.7922568
8 -1.52657337 0.6147363
9 1.43228181 -0.7891716
10 0.15651466 -1.0415412
11 0.01792464 -0.3184454
12 -0.39428864 1.8005928
13 -0.48033841 -1.2787737
14 -0.51845529 0.2815327
15 0.33342239 -0.1313864
16 0.80461529 -0.2456082
17 0.30222411 -1.0134336
18 -0.83910609 -0.8805410
19 -0.06040907 1.4582650
20 0.12855851 -0.3424985
要在上面创建的数据框中找到 x2 介于 1 和 1.2 之间时 y2 值的总和,请将以下代码添加到上面的代码段中 -
x2<-rnorm(20)输出结果y2<-rnorm(20)
df2<-data.frame(x2,y2)
with(df2,sum(y2[x>21 & x2<1.2]))
如果您将上述所有给定的片段作为单个程序执行,它会生成以下输出 -
[1] 0.2739985
示例 3
以下代码段创建了一个示例数据框 -
x3<-sample(0:9,20,replace=TRUE)y3<-sample(0:9,20,replace=TRUE)
df3<-data.frame(x3,y3)
df3
创建了以下数据框
x3 y31 9 0
2 2 3
3 2 1
4 1 2
5 2 0
6 1 6
7 3 1
8 1 0
9 9 5
10 6 9
11 1 5
12 6 6
13 7 3
14 9 7
15 9 8
16 5 8
17 0 1
18 6 9
19 3 4
20 1 3
要在上面创建的数据框中找到 x3 介于 8 和 10 之间时 y3 值的总和,请将以下代码添加到上述代码段中 -
x3<-sample(0:9,20,replace=TRUE)输出结果y3<-sample(0:9,20,replace=TRUE)
df3<-data.frame(x3,y3)
with(df3,sum(y3[x>38 & x3<10]))
如果您将上述所有给定的片段作为单个程序执行,它会生成以下输出 -
[1] 20
以上是 根据 R 中的另一个数值列查找列值的总和。 的全部内容, 来源链接: utcz.com/z/352620.html