在Pandas数据框中,如何应用类似Excel的left('state',2)来仅获取前两个字母?理想情况下,我想学习如何在数据框中使用left、right和mid。因此,需要等效方法而不是针对此特定示例的"技巧"。
data = {'state': ['Auckland', 'Otago', 'Wellington', 'Dunedin', 'Hamilton'],
'year': [2000, 2001, 2002, 2001, 2002],
'pop': [1.5, 1.7, 3.6, 2.4, 2.9]}
df = pd.DataFrame(data)
print df
pop state year
0 1.5 Auckland 2000
1 1.7 Otago 2001
2 3.6 Wellington 2002
3 2.4 Dunedin 2001
4 2.9 Hamilton 2002
我想获得这个:
pop state year StateInitial
0 1.5 Auckland 2000 Au
1 1.7 Otago 2001 Ot
2 3.6 Wellington 2002 We
3 2.4 Dunedin 2001 Du
4 2.9 Hamilton 2002 Ha
df['year'].astype('str')
将其转换为字符串,然后按照答案中的方式进行操作,或者使用数值运算,例如df['year'] % 100
。 - alko