1

给定的是 data.frame “数据”,其中一列包含数值。我现在只想计算从值 2 到值 10 的范围的平均值。

我试着像这样解决它

mean(data$pressure[2]:data$pressure[10])

但是 r 只打印 data$pressure[2] 的单个值,看不到任何意思。问题似乎全在于与 r 通信,即平均值应该涵盖一个范围,而不是一个列表。

作为目标示例:

mean(1:4)

它完美地计算了 1、2、3 和 4 的平均值(=2.5)。

我宁愿在不使用包的情况下这样做,只使用 r 的默认功能。

编辑:通过尝试使用更多数字作为平均值的输入,我注意到输出限制为小数点后六位。有没有办法增加位数?

4

1 回答 1

7

正确的语法是:

mean(data$pressure[2:20])

2或者,如果您的意思是获取和之间的所有值的平均值10

with(data, mean(pressure[pressure > 2 & pressure < 10]))
于 2013-05-28T20:57:12.483 回答