如何使用var函数获得大矩阵的单个数字结果?

时间:2019-07-17 03:29:27

标签: r

使用var函数

(a)从上方查找行平均值的样本方差;

(b)找到整个XYZmat的样本方差; <-此

(c)用XYZmat的样本方差除以行平均值的样本方差。统计理论说,比率平均将接近行样本大小,即n。

(d)您的结果与理论相符吗? (这不是一个简单的问题。)展示你的作品。

这就是他在问题中所要的,我无法获得单个数字的结果,所以我只使用了sd函数,然后对结果求平方。我一直想知道是否还有一种方法可以使用var函数获得单个数字结果。在我的情况下,n是30,我从作业的前一部分得到了它。这是我参加的第一堂R课,这是第一堂课,因此答案应该很简单。

我尝试了as.vector()函数,但仍然得到了一组数字。我玩过var函数,没有变化。

不幸的是,由于矩阵太大,笔记本电脑开始滞后,我删除了所有的代码。

我没有任何错误消息,但是我一直得到一组答案数字……

1 个答案:

答案 0 :(得分:1)

set.seed(123)
XYZmat <- matrix(runif(10000), nrow=100, ncol=100) # make a matrix
varmat <- var(as.vector(XYZmat)) # variance of whole matrix
n <- nrow(XYZmat) # number of rows
n
#> [1] 100
rowmeans <- rowMeans(XYZmat) # row means
varmat/var(rowmeans) # should be near n
#> [1] 100.6907

reprex package(v0.3.0)于2019-07-17创建