对象的算术平均值意味着

时间:2016-07-26 14:52:56

标签: r math mean

我想弄清楚如何在R中解决这个等式:

arithmetic mean of object means K

在变量X中,我的数据是安全的,并附加行的列意味着。

X$rowMeans <- rowMeans(X, na.rm = TRUE);

致电X

V1 V2 V3  V4  V5  V6  V7  V8  V9 rowMeans
1  6  8  3   4   4 NaN NaN NaN NaN 5.000000
2  6  9  4   9   5   6   9  10   8 7.333333
3  9  4 10 NaN NaN NaN NaN NaN NaN 7.666667

因为我需要NaN的数量及其在矩阵X中的位置来计算K我想到了一个列表。在stackoverflow的某个地方,我发现了以下内容:

Counter <- 0
Result <- list(NULL)
Size <- 1
AddItemDoubling <- function(item){
    if( .GlobalEnv$Counter == .GlobalEnv$Size )
    {
        length(.GlobalEnv$Result) <- .GlobalEnv$Size <- .GlobalEnv$Size * 2
    }

    .GlobalEnv$Counter <- .GlobalEnv$Counter + 1

    .GlobalEnv$Result[[.GlobalEnv$Counter]] <- item
}

并添加了

for(i in 1:9){
    AddItemDoubling(which(!is.na(X[i])))
}

调用结果

[[1]]
[1] 1 2 3

[[2]]
[1] 1 2 3

[[3]]
[1] 1 2 3

[[4]]
[1] 1 2

[[5]]
[1] 1 2

[[6]]
[1] 2

[[7]]
[1] 2

[[8]]
[1] 2

[[9]]
[1] 2

[[10]]
NULL

[[11]]
NULL

[[12]]
NULL

[[13]]
NULL

[[14]]
NULL

[[15]]
NULL

[[16]]
NULL  

看起来很棒!我可以使用Result [4]来获取

[[1]]
[1] 1 2

将此应用于

sum(X$rowMeans[Result[i]])
由于错误消息“无效的下标类型'列表'”,

让我陷入困境。

我想要得到类似的东西

[,1]  [,2]  [,3]  [,4]  [,5]  [,6]  [,7]  [,8]  [,9]
[1,] 6.666 6.666 6.666 6.166 6.166 7.333 7.333 7.333 7.333

任何帮助/提示都是适用的!

0 个答案:

没有答案