С 2 списками, как вы описываете:
In [39]: alist=[1,3,5,7]; blist=[2,4,6,8]
Естественный способ объединить их в массив:
In [40]: arr = np.array((alist, blist))
In [41]: arr
Out[41]:
array([[1, 3, 5, 7],
[2, 4, 6, 8]])
Транспонирование этого массива выглядит следующим образом:
In [42]: arr.T
Out[42]:
array([[1, 2],
[3, 4],
[5, 6],
[7, 8]])
Который мы можем написать savetxt
как:
In [44]: np.savetxt('foo.txt', arr.T, fmt='%5d')
In [45]: cat foo.txt
1 2
3 4
5 6
7 8
column_stack
и c_
создадут один и тот же массив.
Вы можете добавить разделитель ',', если этого требует ваш внешний читатель.
Знаете ли вы, как читать вывод записи savetxt
в виде простого текста? Я использую bash
оболочку cat
.
Когда у людей возникают проблемы с чтением и записью файлов csv
, мы обычно просим образцы, чтобы мы могли воспроизвести проблему. При необходимости может помочь выборка промежуточных массивов (например, вывод column_stack
). В противном случае нам остается только догадываться, в чем проблема.