![]() |
1
7
我一直想自己做这件事,事实上,还没有一个很好的内置方式来做这件事。这是一种方法。我选择创建lil_matrix的一个子类并添加remove_col函数。如果需要,可以将removecol函数添加到
我试过了,没发现什么虫子。我当然认为这比把列切掉要好,就我所知,这只是创建了一个新的矩阵。 我决定也做一个removeow功能,但我认为它不如removecol好。我无法按我所希望的方式从ndarray中删除一行,这限制了我的工作。这里是removeow,可以添加到上面的类中
也许我应该将这些函数提交给scipy存储库。 |
![]() |
2
9
更简单更快。您甚至可能不需要转换为csr,但我只知道它与csr稀疏矩阵一起工作,并且在两者之间转换不应该是一个问题。
|
![]() |
3
3
对于稀疏的csr矩阵(x)和要删除的索引列表(index_to_drop):
很容易将lil_矩阵转换为csr_矩阵。检查中的tocsr() lil_matrix documentation 但是,请注意,使用to lil()从csr到lil矩阵是昂贵的。所以,当您不需要使用LIL格式的矩阵时,这个选择是很好的。 |
![]() |
4
2
我是python新手,所以我的答案可能是错误的,但我想知道为什么下面这样的东西不会有效? 假设您的lil_矩阵称为mat,并且您希望删除i列:
在那之后矩阵会变成一个coo_矩阵,但是你可以把它变成lil_矩阵。 好吧,我知道在分配给mat变量之前,必须在hstack中创建两个矩阵,这样就好像原始矩阵同时再加上一个一样,但是我猜如果稀疏性足够大,那么我认为不应该有任何内存问题。lems(因为内存(和时间)是使用稀疏矩阵的全部原因)。 |
![]() |
5
0
只需重新编写代码以使用col_list作为输入-也许这对某些人有帮助。 |
![]() |
6
0
通过查看每个稀疏矩阵的注释,特别是在我们的例子中是csc矩阵,它具有文档中列出的以下优点 [1]
如果有要删除的列索引,只需使用切片。 为了删除行,使用csr矩阵,因为它在行切片中是有效的 |
|
unfolx · numpy数组不等式的执行时间 8 月前 |
|
mchaudh4 · 用numpy表示三对角矩阵 8 月前 |
![]() |
Geremia · 2D NumPy数组+1D数组? 8 月前 |
![]() |
LMC · Numpy数组布尔索引以获取包含元素 8 月前 |
![]() |
HJA24 · 根据条件用值正向填充Numpy矩阵/掩码 9 月前 |
![]() |
Amarth Gûl · 找到一组向量的最近收敛点 9 月前 |
![]() |
Mr. W · numpy.divide是函数、类还是其他什么? 9 月前 |
![]() |
Mr. W · 为什么numpy.array在编辑内部数据时如此缓慢? 9 月前 |