繁体   English   中英

将Numpy矩阵值转换为float32

[英]Convert Numpy matrix values to be float32

我想将下面的特征向量矩阵中的值强制为float32类型,以节省内存空间,而不是使用float64 但是,似乎我在eigenvectors.astype(np.float32)执行的方法不起作用。 有没有解决的办法?

import networkx as nx
G = nx.Graph(edges)
L = nx.laplacian_matrix(G)
eigenvalues, eigenvectors.astype(np.float32) = np.linalg.eig(L.todense())

所述np.linalg.eig函数返回相同的阵列dtype作为其参数。

因此,您有两种选择:

  1. 尝试np.linalg.eig(L.todense().astype(np.float32)) (这可能会溢出)
  2. 稍后转换特征向量。

第二个选项是这样的:

eigenvalues, eigenvectors = np.linalg.eig(L.todense())
eigenvectors = eigenvectors.astype(np.float32)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM