【发布时间】:2017-12-06 17:37:49
【问题描述】:
我正在尝试将平均计算作为更大代码的一部分。这个想法是从一列中的一系列值计算平均值,但不是所有列。
例如,从yFile 中的column_x(10 个条目),计算最后4 个值的平均值:
column_x
1
5
8
3
0
3
3
7
9
9
Result = 7
这就是我所拥有的:
avg_subx <- mean(yFile$column_x, 7:10, trim = 0, na.rm = FALSE)
但由于某种原因,我得到的结果不是正确的值。 你能帮我找出哪里出错了吗?
谢谢!
【问题讨论】:
-
索引您明确传递的列,如:
mean(yFile$column_x[(nrow(yFile) - 3):nrow(yFile)]) -
问题在于它没有识别行限制,而是对整个列进行平均。关于如何将平均值限制为最后四个条目的任何建议?谢谢!
-
如果您使用我粘贴的代码,它将起作用。
-
我不清楚您打算使用什么标准来过滤这些值。例如,如果它是诸如“last 4”之类的位置,那么 VictorCortés 对
tail的使用是正确的;如果它是绝对位置,那么我认为mean(yFile$column_x[7:10],...)就足够了;如果它是基于值的,那么您可以使用类似于 Zach 的评论或Filter(...,yFile$column_x,...)的变量索引。请提供一个或多个具有代表性的样本向量(不需要是完整的data.frame,因为您只是按列执行操作)。 -
它确实有效!谢谢!我假设 sum 函数的规格相同,对吧?