Создать функцию для редактирования нескольких столбцов в кадре данных pandas - столбцы отличаются на 1 цифруPython

Программы на Python
Ответить
Anonymous
 Создать функцию для редактирования нескольких столбцов в кадре данных pandas - столбцы отличаются на 1 цифру

Сообщение Anonymous »


У меня 11 столбцов

df.columns = ["Документ","Тема1","Тема2","Тема3","Тема4","Тема5","Тема6","Тема7","Тема8","Тема9" ,"Субъект10"] Я хочу создать функцию, которая обрабатывает каждый из этих столбцов и выполняет несколько операций по очистке/разделению данных.

Вот что у меня есть.

def Split_data(): df['Subject_{0}_URI'] = df['Subject{0}'].str.split('>', 1).str[0] + '>' df['Тема{0}'] = df['Тема{0}'].str[:-6] df['Subject_{0}'] = df['Subject{0}'].str.split('>', 1).str[1] df1 = df.drop(['Тема{0}'], ось = 1) df1.to_excel('/merged_results.xlsx', индекс = False) Split_data() Вот какую ошибку я получаю
Вышеупомянутое исключение было непосредственной причиной следующего исключения: Traceback (последний вызов последний): Файл «/merge_results.py», строка 44, в Split_data() Файл «/merge_results.py», строка 39, в разделе Split_data. df3['Subject_{0}_URI'] = df3['Тема{0}'].str.split('>', 1).str[0] + '>' Файл "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/pandas/core/frame.py", строка 3807, в __getitem__ индексатор = self.columns.get_loc(ключ) Файл «/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/pandas/core/indexes/base.py», строка 3804, в get_loc поднять KeyError(ключ) из ошибки KeyError: «Тема{0}»
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»