Как добавить заголовок к существующим CSV-файлам с помощью Python без переписать весь существующий контент

Я пытаюсь добавить заголовок в мой существующий CSV-файл, и в нем уже есть содержимое. Мне просто интересно, есть ли какой-нибудь фрагмент кода, который мог бы вставить строку заголовка вверху (например, ['name', 'age', 'salary', 'country'], не затрагивая содержимое.

Также этот код связан с API, поэтому я буду запускать его несколько раз. Так что просто интересно, можно ли определить, существует ли заголовок, чтобы избежать нескольких строк заголовка.

Спасибо и надеюсь всем хорошего дня!

1 ответ

Решение

Ваш вопрос состоит из 2 частей:

1) Чтобы добавить заголовок в ваш CSV (если он не существует) Чтобы вставить строку заголовка, вы можете прочитать CSV с помощью следующей команды:

df=pd.read_csv(filename, header=None, names=['name','age','salary','country'])

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

df.to_csv(new_file_with_header.csv, header=True)

2) Вторая партия немного сложнее. Чтобы определить, имеет ли ваш файл заголовок или нет, вам придется написать небольшой код. Я могу предоставить вам алгоритм.

читать csv явно с заголовком

df=pd.read_csv(filename.csv, header=None, names=['name','age','salary','country'])

Проверьте для 1-го ряда 1-й столбец в вашем CSV, если он содержит значение в качестве "имени", то напишите CSV от 2-го ряда до конца, иначе написать как есть

temp_var=df['name'].iloc[0]

if (temp_var=='name'):
  df.iloc[1:].to_csv(new_file.csv)
else:
  df.to_csv(new_file.csv)

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

Спасибо, Рохан Ходаркар

Другие вопросы по тегам