所以我正在做一些计算,我想在python中使用一个大数组.问题是如果我想对数组做一些事情,那么我的代码将重建数组(这需要花费很多时间).理想情况下,我想:
- 运行我的代码一次,然后创建数组. - 将阵列保存到我的电脑中. - 在另一个项目中加载它,这样我就可以玩它了.
我看了numpy的文档,我试过了
from tempfile import TemporaryFile
outfile = TemporaryFile()
np.save(outfile, x)
(上面的x是我的数组).
但是,我似乎无法在任何地方找到我的计算机上的.npy文件.(如果有帮助,我正在使用PyCharm).那么如何保存它,以及如何在另一个项目中加载我的数组呢?
我在python和命令中使用networkx
A = nx.adjacency_matrix(G)
Run Code Online (Sandbox Code Playgroud)
返回csr矩阵,而不是2D数组.因此,当我尝试做的时候
np.trace(A)
Run Code Online (Sandbox Code Playgroud)
我收到一个错误:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python3/dist-packages/numpy/core/fromnumeric.py", line 1279, in trace
return asarray(a).trace(offset, axis1, axis2, dtype, out)
ValueError: diag requires an array of at least two dimensions
Run Code Online (Sandbox Code Playgroud)
我该如何绕过去追踪?