Добавить независимый заголовок в CSV-файл с пандами - PullRequest
0 голосов
/ 29 октября 2018

У меня есть csv dataframe, который я хочу сохранить с дополнительным заголовком, кроме столбцов. Панды должны прочитать мой файл без заголовка:

pd.read_csv('file.csv', header=2)

После редактирования файла CSV я хотел бы сохранить его с новым заголовком, например, он должен выглядеть так:

no rows = 4
no cols = 3        
index, col1, col2, col3
0, A, B, C
1, D, E, F
2, G, H, I
3, J, L, M

Но аргумент заголовка в функции to_csv, похоже, зависит от столбцов как псевдонимов в соответствии с документами (https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.to_csv.html)

Заголовок будет считать каждую строку одной ячейкой, следовательно, 1col x 2row df. Я думал о добавлении двух, но из-за неравных столбцов это не сработало. Есть ли простой способ добавить независимый заголовок в csv-файл?

Я не смог найти сообщение с этой проблемой, любая помощь будет оценена!

1 Ответ

0 голосов
/ 29 октября 2018

Итак, когда вы хотите прочитать заголовок файла without в pandas. Есть:

df = pd.read_csv('file.csv', header=None)

Теперь, после выполнения всех видов обработки в df, вы можете назначить column_names по вашему выбору, например:

col_list = ['col1','col2','col3']
df.columns = col_list

Теперь, напишите это df обратно в CSV, используя to_csv:

df.to_csv('/new_file.csv', index=None, header=None)

Вы можете вставить свой двухстрочный заголовок в начало этого файла, написав его так:

        with open('/new_file.csv', 'r+') as f:
        content = f.read()
        f.seek(0, 0)
        f.write('my_2-line_header' + '\n' + content)

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...