写入和读取numpy嵌套数组

写入和读取numpy嵌套数组,numpy,numpy-ndarray,Numpy,Numpy Ndarray,我正在尝试将嵌套数组(每行数组的数组)写入文本文件并成功地读回,但我不确定是否正确,因为读回数组似乎永远都不起作用 我这样写整数数组: tmp_data = np.empty(shape=[len(tmp_list),3], dtype=np.object) for idx, item in enumerate(tmp_list): tmp_data[idx] = item[0][0], item[0][1], item[1] 数组的结果第一行如下所示: [ar

我正在尝试将嵌套数组(每行数组的数组)写入文本文件并成功地读回,但我不确定是否正确,因为读回数组似乎永远都不起作用

我这样写整数数组:

    tmp_data = np.empty(shape=[len(tmp_list),3], dtype=np.object)
    for idx, item in enumerate(tmp_list):
        tmp_data[idx] = item[0][0], item[0][1], item[1]
数组的结果第一行如下所示:

[array([1,2,3]), array([1,2,3]), array([1])]
 [[ 3  4  3  0  4  4  5  5  5  3  4  4  3  5  6  4  3  5  4  4  0  4  5  4
    3  4  3  0  4  4  5  5  5  3  4  4  3  5  6  4  3  5  4  4  0  4  5  4
     4  4  3  5  6  4  3  5  4  4  0  4  5  4]] [[....]] [[1]]
 ....
我可以使用以下方法编写:

    np.savetxt(some_filename, tmp_data, fmt="%s)
。。但当我读到它时,使用:

np.genfromtxt(some_filename)
我得到了类似于
Line#89737(得到了36列而不是25列)
。事实上,如果我查看编写的文本文件,它看起来像数组被分成了几行,如下所示:

[array([1,2,3]), array([1,2,3]), array([1])]
 [[ 3  4  3  0  4  4  5  5  5  3  4  4  3  5  6  4  3  5  4  4  0  4  5  4
    3  4  3  0  4  4  5  5  5  3  4  4  3  5  6  4  3  5  4  4  0  4  5  4
     4  4  3  5  6  4  3  5  4  4  0  4  5  4]] [[....]] [[1]]
 ....
这不是故意的


总之,我想逐行写出数组矩阵的数组,然后用numpy读回。

除非您死心塌地地使用文本格式,否则您可以这样使用:

tmp_data.dump(一些文件名.npy)

然后使用。

将其读回,除非您已经下定决心使用文本格式,否则您可以这样使用:

tmp_data.dump(一些文件名.npy)

然后用。

读回。谢谢。是的,不管怎样,我最终还是得到了一个类似泡菜的解决方案。但是,你的回答确实有帮助-这是蟒蛇式的。谢谢你的回答。是的,不管怎样,我最终还是得到了一个类似泡菜的解决方案。但是,你的答案确实有帮助——这是蟒蛇式的。