Объедините несколько столбцов в новый столбец. csv файл, питон, панды

У меня есть большой индекс csv с числом столбцов x и числом строк y. Я хочу, чтобы мой код проходил через каждый csv (в то время как цикл индекса) и объединял столбцы с определенными заголовками в новый столбец, а затем сохранял csv в новый путь. Это мой код, но я получаю сообщение об ошибке:

'utf-8' codec can't decode byte 0xa9 in position 33: invalid start byte

Любые идеи?

import os
import pandas as pd

#code to add new row to all csvs with unique identifier stamp that combines 
the following: 
#wellkey+drillkey+lat+long+spuddate

files=['Apr 23 2018.csv','Apr 20 2018.csv']
index=0
os.chdir('file path')

#code to loop through all the files listed above
while index < len(files):
    os.chdir('file path')
    current_file=files[index]

    #unique identifier column
    df=pd.read_csv(current_file)
    df['Unique Identifier']=df['A'] + "-" + df['B'] + "-" + df['C'] + "-" + 
    df['D'] + "-" + df['E']
    df.to_csv(current_file)

    #save new csv
    os.chdir('New file Path')
    index = index + 1

Спасибо за советы / комментарии / исправления.

Возможный дубликат UnicodeDecodeError при чтении файла CSV в Pandas с помощью Python

wwii 27.04.2018 19:12

Добро пожаловать в SO. Найдите время, чтобы прочитать Как спросить и другие ссылки на этой странице.

wwii 27.04.2018 19:12
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
2
1 120
1

Ответы 1

Когда я столкнусь с этой проблемой, первое, что я попробую, - это добавить encoding='ISO-8859-1 в свой оператор pd.read_csv().

Итак, ваше утверждение будет выглядеть так: df=pd.read_csv(current_file, encoding='ISO-8859-1')

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