У меня есть список 1-D массивов.Я хочу вывести его в CSV-файл с каждой строкой в ​​виде 1-D массива.Можно ли сделать это, используя NumPy, сохранить? - PullRequest
0 голосов
/ 06 декабря 2018

Пример: f_1 = [массив ([[1.1,2.2,3.7,4.9,5.2]], dtype = float32), массив ([[9,11.5,5.8,6.7,8.9]], dtype = float32)]

Файл дампа должен быть CSV-файлом, причем строка является элементом (массив 1-D) списка.

1 Ответ

0 голосов
/ 06 декабря 2018

Поскольку два массива имеют одинаковую форму, легко создать двумерный массив и записать его с помощью savetxt:

In [491]: f_1= [np.array([[1.1,2.2,3.7,4.9,5.2 ]], dtype='float32'), np.array([[9,11.5,5.8,6.7,8.9]],dtype='float32')]

In [492]: f_1
Out[492]: 
[array([[1.1, 2.2, 3.7, 4.9, 5.2]], dtype=float32),
 array([[ 9. , 11.5,  5.8,  6.7,  8.9]], dtype=float32)]
In [493]: x = np.vstack(f_1)
In [494]: x
Out[494]: 
array([[ 1.1,  2.2,  3.7,  4.9,  5.2],
       [ 9. , 11.5,  5.8,  6.7,  8.9]], dtype=float32)
In [495]: x.shape
Out[495]: (2, 5)
In [496]: np.savetxt('test.txt', x,delimiter=',', fmt='%4.1f')
In [497]: cat test.txt
 1.1, 2.2, 3.7, 4.9, 5.2
 9.0,11.5, 5.8, 6.7, 8.9
...