Если я правильно понимаю, вам просто нужно добавить .T
к вашей строке, чтобы написать транспонированный фрейм данных.
df.T.to_csv('file.csv', mode='a', index=False, header=False)
---^
хотя, если вы используете pandas только для записи списков в виде строк в файлы csv, вам лучше взглянуть на модуль csv
, потому что создание промежуточных фреймов данных довольно бессмысленно.
import csv
lst = ['Name', 'Age', 'City']
with open('file.csv', 'a') as f:
csv.writer(f).writerow(lst)