StormValues
符号在R?
我在下面展示了一些例子:
:
最初,我认为> library(Matrix)
> m <- Matrix(c(0,0,2:0), 3,5)
> m
3 x 5 sparse Matrix of class "dgCMatrix"
[1,] . 1 . . 2
[2,] . . 2 . 1
[3,] 2 . 1 . .
> m > 1
3 x 5 sparse Matrix of class "lgCMatrix"
[1,] . : . . |
[2,] . . | . :
[3,] | . : . .
> m > 2
3 x 5 sparse Matrix of class "lgCMatrix"
[1,] . . . . .
[2,] . . . . .
[3,] . . . . .
符号表示稀疏矩阵:
中的非缺席False值(m
为True),但是,通过查看{{1}例如,由于缺少所有值,因此似乎不是这种情况。
答案 0 :(得分:0)
是的,:
表示不丢失的FALSE
值。可以做更多的事情,尤其是使用drop0
方法,以查看情况是否如此。例如,
> m_gt1 <- m > 1
> m_gt1
3 x 5 sparse Matrix of class "lgCMatrix"
[1,] . : . . |
[2,] . . | . :
[3,] | . : . .
> m_gt1@x
[1] TRUE FALSE TRUE FALSE TRUE FALSE
> m_gt1_clean <- drop0(m_gt1)
> m_gt1_clean
3 x 5 sparse Matrix of class "lgCMatrix"
[1,] . . . . |
[2,] . . | . .
[3,] | . . . .
> m_gt1_clean@x
[1] TRUE TRUE TRUE
也就是说,消除不丢失的FALSE
值会消除显示中的:
。
对于m > 2
行为:有a branch in the code for evaluating comparison operators检查所有内容是否为FALSE
,如果是则将丢弃值(矩阵上的@x
)。因此,您将丢失不容错过的评估,并看到完全稀疏的版本。