我有一个逻辑稀疏矩阵,比如m
,(如果这会使事情变得更快,可以是Matrix
,slam
或SparseM
矩阵中的任何一个)想要做到以下几点:
for (col in 1:ncol(m)) {
print(table(m[ , col], logicalV)
}
其中logicalV
是固定的逻辑向量,其长度与m
中的行长度相同。可以认为这是在稀疏m
中为每个要素创建一个混淆矩阵。
我正在为m
处理的维度是:(15~40K)x(75~125K)。这使得访问列m[ , col]
的步骤非常慢。
我在寻找的是 fast 解决方案。有什么想法吗?
编辑:
根据评论,这里是我真正想要实现的内容的概述。我有一堆功能选择指标,如信息增益, binormal separation 等,它们都是混淆矩阵的函数(即table(m[ , col], logicalV)
),因为它们是真阳性/阴性和假阳性/阴性计数的功能。因此,对于每个列和logicalV
,我需要知道TRUE
,FALSE
和TRUE
的计数。这有帮助吗?