我有一个这样的数据框
Anno | Mese
___________
2018 | Gennaio
2019 | Febbraio
2020 | Aprile
如果Mese的值为:Gennaio,Febbraio,Marzo->我希望Anno的值为year_Q1如果Mese的值为:Aprile,Maggio,Giugno,->我希望Anno的年份为year_Q2如果Mese的值为: Luglio,Agosto,Settembre,->我希望Anno为year_Q3如果Mese的值为:Ottobre,Novembre,Dicembre->我希望Anno为year_Q4
我的预期输出是:
Anno | Mese
___________
2018_Q1 | Gennaio
2019_Q1 | Febbraio
2020_Q2 | Aprile
如何在熊猫中高效地做到这一点?
Series.map
与字典一起使用,并添加到anno
列中:
d = {'Q1': ['Gennaio', 'Febbraio', 'Marzo'],
'Q2': ['Aprile', 'Maggio', 'Giugno'],
'Q3': ['Luglio', 'Agosto', 'Settembre'],
'Q4': ['Ottobre', 'Novembre', 'Dicembre']}
#http://stackoverflow.com/a/31674731/2901002
d1 = {k: oldk for oldk, oldv in d.items() for k in oldv}
df['Anno'] = df['Anno'].astype(str) + '_' + df['Mese'].map(d1)
print (df)
Anno Mese
0 2018_Q1 Gennaio
1 2019_Q1 Febbraio
2 2020_Q2 Aprile
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句