#pandas #replace
#pandas #заменить
Вопрос:
Я пытаюсь переименовать столбец по позиции в фрейме данных pandas.
Я пытался:
df.rename(columns={ df.columns[0]: "Line Items" }, inplace=True) #replace name
Но этот код заменяет все столбцы, которые имеют то же имя, что и столбец [0], на «Позиции», независимо от их позиций.
Ответ №1:
Давайте преобразуем в series
, затем изменим значение на .iloc
и присвоим его обратно
s = df.columns.to_series()
s.iloc[0] = 'something'
df.columns = s
Ответ №2:
Вы можете назначить столбцы в понимании списка с помощью базовой логики
import pandas as pd
df = pd.DataFrame(columns=list('AABCDA'))
df.columns = ["Line Items" if i == 0 else x for i,x in enumerate(df.columns)]
print(df)
#Empty DataFrame
#Columns: [Line Items, A, B, C, D, A]
#Index: []
Комментарии:
1. С праздником ~~
2. Спасибо. С праздником!