我需要做以下
b = numpy.random.randn(50001,2)
cof = numpy.corrcoef(b)
c= b>=0.3
return np.dot(c, np.ones([50001,1]))
它给我一个分段错误。
此外,如果我尝试使用稀疏矩阵,例如:
asp = scipy.sparse.csc_matrix(c)
我收到了分段错误
如果矩阵尺寸很小,则转换有效。
有什么建议吗?
答案 0 :(得分:1)
您是否尝试计算50001维空间的两个样本或2D空间的50001个样本之间的相关性?
在您目前的情况下,您正在创建隐式50001 x 50001协方差矩阵(导致段错误)。执行以下操作不会破坏内存
b = numpy.random.randn(2,50001)
cof = numpy.corrcoef(b)
希望这就是你所需要的(另一种方式会产生非常差的协方差矩阵和段错误)。