行和列大小都较大时的python矩阵

2024-09-25 08:40:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我想在python中创建一个2D矩阵,当行数和列数相等时,它大约是231000。大多数单元格条目都是零。 一些[i][j]条目将是非零的。你知道吗

创建此矩阵的原因是应用SVD并得到秩为30的[usv]矩阵。你知道吗

有谁能告诉我如何通过应用适当的库来实现这一点。我尝试了数据帧,但它显示内存错误。你知道吗

我也见过稀疏的但不知道如何应用它来寻找奇异值分解。你知道吗


Tags: 数据内存错误条目原因矩阵svd列数
1条回答
网友
1楼 · 发布于 2024-09-25 08:40:11

我认为这是一个重复的问题,但我无论如何都会回答这个问题。你知道吗

python中有几个库用于处理非常稀疏矩阵上的部分svd。你知道吗

我个人的偏好是scipy.sparse.linalg.svds,迭代部分SVD计算的ARPACK实现。你知道吗

您还可以尝试函数sparsesvd.sparsesvd,它使用SVDLIBC实现,或者scipy.sparse.linalg.svd,它使用LAPACK实现。你知道吗

要将表转换为这些算法使用的格式,您需要导入scipy.sparse,这允许您使用csc_matrixclass

使用上面的链接来帮助你。在堆栈溢出上已经有很多资源,在internet上还有更多的资源。你知道吗

相关问题 更多 >