R语言MatrixStats包rowVars函数如何通过dim参数在三维数组上计算行方差
问题场景
- 持有维度为
(12, 12, 10000)的三维数组,本质为10000个12×12矩阵的集合 - 日常使用R基础函数
rowMeans即可轻松计算每个子矩阵的行均值,最终返回包含10000个结果项的列表,完全符合使用预期 - 目标是借助MatrixStats包的
rowVars函数实现同等计算逻辑,获取每个子矩阵的行方差
运行异常情况
- 传入单个12×12矩阵时,
rowVars功能运行完全正常 - 传入上述三维数组时,函数触发报错,提示需传入
dim参数 - 查阅官方文档可知,
dim参数为长度为2的整数向量,用于非矩阵场景下指定输入对象x的维度,但现有文档的解释信息不足,无法直接指导正确传参
现存认知困惑
- 无法明确
dim参数的实际含义:不清楚该参数是用于指定维度数量,还是需要传入类似c(12, 12, 10000)的完整维度信息 - 不理解为什么要求dim参数长度固定为2,和当前三维数组的应用场景存在明显认知冲突
- 未检索到可参考的有效使用示例,无法推导正确的参数填写方式
内容的提问来源于stack exchange,提问作者Ellen
相关产品推荐
相关产品推荐

