2016-09-13 3 views
0

У меня есть массивы (q, I) с различным количеством столбцов каждый, и я хочу сохранить их в txt-файле, сохраняя порядок столбцов, то есть в txt-файле массивы должны быть похожими :сохранять массивы numpy в txt

q, I0, I1, I2, ... 

форма моих массивов:

q.shape = (300,) 
I.shape = (300, 12) 

Я попытался это:

save_arrays = np.array(zip(q, I)) 
np.savetxt('dummy.txt', save_arrays, delimiter='\t', newline='\r\n', 
     fmt='%.5f', header='q [A-1]/I [a.u.]') 

форма save_arrays является:

save_arrays.shape = (300, 2) 

Это две колонны вместо 13. Эти столбцы являются одним массивом д и нескольких столбцов массива I.

Во всяком случае, я получаю эту TypeError, а также:

TypeError: Mismatch between array dtype ('object') and format specifier ('%.5f %.5f') 

Любая помощь приветствуется.

+0

Вы можете написать пример данных массива? –

+1

Попробуйте 'save_arrays = np.hstack ((q [:, np.newaxis], I))' – VBB

+0

Большое спасибо @VBB. Он сделал то, что хотел! –

ответ

1

Попробуйте save_arrays = np.hstack((q[:,np.newaxis],I))

+1

'np.column_stack' также должен работать, без необходимости корректировать форму' q'. –

+0

Спасибо @MarkDickinson, я не знал о 'np.column_stack'. – VBB

Смежные вопросы