我正在处理一些相当大的稀疏矩阵(从5000x5000到20000x20000),需要找到一种有效的灵活方式来连接矩阵,以便从分离的部分构建随机矩阵。
目前我正在使用以下方法来连接四个矩阵,但效率非常低。有没有更好的方法可以做到这一点,而不涉及转换为密集矩阵?
rmat[0:m1.shape[0],0:m1.shape[1]] = m1
rmat[m1.shape[0]:rmat.shape[0],m1.shape[1]:rmat.shape[1]] = m2
rmat[0:m1.shape[0],m1.shape[1]:rmat.shape[1]] = bridge
rmat[m1.shape[0]:rmat.shape[0],0:m1.shape[1]] = bridge.transpose()
hstack
是将稀疏矩阵按行进行连接(水平连接),而vstack
是将稀疏矩阵按列进行连接(垂直连接)。 - Farid Alijani