在R中有一个矩阵:
one two three four
[1,] 1 6 11 16
[2,] 2 7 12 17
[3,] 3 8 11 18
[4,] 4 9 11 19
[5,] 5 10 15 20
Run Code Online (Sandbox Code Playgroud)
我想提取其行有第三列= 11的子矩阵.这是:
one two three four
[1,] 1 6 11 16
[3,] 3 8 11 18
[4,] 4 9 11 19
Run Code Online (Sandbox Code Playgroud)
我想在没有循环的情况下这样做.我是R的新手,所以这可能非常明显,但文档往往有些简洁.
我有一个日期框架(“daten”),其中大多数列都是数值。它们的范围通常从 0 到 5。但是,它们也可以取值 99。我想计算列的平均值,仅排除值 99。
例如:
> mean(c(0, 1, 2, 3, 4, 5, 99))
[1] 16.28571
Run Code Online (Sandbox Code Playgroud)
不是我需要的,而是我希望它被计算为好像向量是
> mean(c(0, 1, 2, 3, 4, 5))
[1] 2.5
Run Code Online (Sandbox Code Playgroud)
,给我我正在寻找的意思。
有一个类似的问题(通过排除任何给定数字来计算平均值,中位数),但该解决方案对我不起作用。然而,我想,一旦我可以排除任何列中的某个值,我就可以简单地将它与 组合apply,所以我实际上正在寻找一种方法来计算某个向量的平均值,但忽略了某些值。