Преобразование, нарезка и объединение столбцов в пандах - PullRequest
1 голос
/ 03 июля 2019

У меня есть DataFrame с несколькими столбцами, и я пытаюсь объединить столбцы месяца и года.

    month    year
    5.0      2019.0
    5.0      2018.0
    4.0      2019.0
   12.0      2019.0

Я пытался использовать функцию map () для преобразования ее в строку

self.internal_df["month_year"] = self.internal_df["month"].map(str) + self.internal_df["year"].map(str)

Проблема в том, что это просто объединяет его в следующее значение:

    month_year
     5.02019.0
     5.02018.0
     4.02019.0
    12.02019.0

и я хочу, чтобы это выглядело так:

    month_year
     5_2019
     5_2018
     4_2019
    12_2019

1 Ответ

2 голосов
/ 03 июля 2019

Самый быстрый способ - преобразовать столбцы месяца и года в int с (float с не имеет особого смысла)

df[['month', 'year']] = df[['month', 'year']].astype(int)

А затем приведите их к str, прежде чем объединить их

df['month_year'] = df['month'].astype(str) + '_' + df['year'].astype(str)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...