我有一个包含几列的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
答案 0 :(得分:2)
最快的方法是将月份和年份列转换为int
(float
并没有多大意义)
df[['month', 'year']] = df[['month', 'year']].astype(int)
然后将它们转换为str
,然后再连接它们
df['month_year'] = df['month'].astype(str) + '_' + df['year'].astype(str)