Я пытаюсь записать вложенный массив (массив массивов на строку) в текстовый файл и успешно прочитать его обратно, но я не уверен, что все делаю правильно, так как чтение массива обратно никогда не работает.
Итак, я пишу целочисленный массив следующим образом:
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])]
Я могу написать это используя:
np.savetxt(some_filename, tmp_data, fmt="%s)
.. но потом, когда я читаю это, используя:
np.genfromtxt(some_filename)
, я получаю что-то вроде Line #89737 (got 36 columns instead of 25)
. В самом деле, если я посмотрю на текстовый файл, который написан, похоже, что массив разбит на несколько строк, например:
[[ 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.