我有一个这种形状的矩阵:
>>> A = [ [12.11432, 10.00211, 9.44100],[0.12361, 5511.13478, 189.79823] ]
A 是稀疏矩阵,我使用的正是lil_matrix
. 我想将 A 的每个元素除以所有元素的总和。此除法的结果必须是与 A 具有相同精度的矩阵 B。
>>> from scipy.sparse import lil_matrix
>>> import numpy as np
>>> A = np.array([ [12.11432, 10.00211, 9.44100],[0.12361, 5511.13478, 189.79823] ])
>>> A = lil_matrix(A)
>>> B = A / A.sum()
>>> B.toarray()
array([[ 2.11322791e-03, 1.74477296e-03, 1.64689266e-03],
[ 2.15625889e-05, 9.61365048e-01, 3.31084961e-02]])
如您所见,A 和 B 之间的精度不一样。
那么,如何在 B 矩阵中只保留小数点后的 5 位?