Ответ 1
Вы можете попробовать Series.rename
:
df = pd.concat((df, s.rename('col')), axis=1)
Я хочу добавить серию (s
) в Pandas DataFrame (df
) в качестве нового столбца. Серия имеет больше значений, чем в ядре данных, поэтому я использую метод concat
вдоль оси 1.
df = pd.concat((df, s), axis=1)
Это работает, но новый столбец данных, представляющий серию, получает произвольное числовое имя столбца, и я бы хотел, чтобы этот столбец имел определенное имя.
Есть ли способ добавить серию к фрейму данных, когда серия длиннее строк фрейма данных и с указанным именем столбца в результирующем фрейме?
Вы можете попробовать Series.rename
:
df = pd.concat((df, s.rename('col')), axis=1)
Конечно, после многих минут попыток этого, я сразу же выяснил ответ самостоятельно после публикации вопроса. Ответ заключается в том, чтобы просто указать имя при создании серии:
example_scores = pd.Series([1,2,3,4], index=['t1', 't2', 't3', 't4'], name='example_scores')
Использование атрибута name при создании серии - все, что мне нужно.
Try:
df = pd.concat((df, s.rename('CoolColumnName')), axis=1)