我有一个数据集:
X Y
20 12
24 11
12 7
10 2
41 24
13 9
50 17
4 12
17 12
35 19
Run Code Online (Sandbox Code Playgroud)
现在我必须在20 <X <50时找到Y的平均值.
我的尝试:
data <- data.frame(X=c(20,24,12,10,41,13,50,4,17,35),
Y=c(12,11,7,2,24,9,17,12,12,19))
sub <- subset(data,X>20 & X<50)
mean(sub$Y)
Run Code Online (Sandbox Code Playgroud)
有没有直接的方法在20 <X <50时找到Y的平均值而不修改原始数据框,即没有子集呢?
不确定你的意思是"没有子集".在某些时候,您将不得不以某种方式对数据进行子集化,因为您正在寻找数据子集的均值.如果您的意思是"不要调用子集函数并保存数据的另一个副本",您可以这样做
mean(data$Y[data$X > 20 & data$X < 50])
# [1] 18
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
136 次 |
最近记录: |