我有一个df
看起来像这样的熊猫数据框:
population
n
France 66.03
Italy 59.83
我想为每一行获取索引标签的第一个字母,并将其设置为新列,以便可以开始使用它进行分析。我怎样才能做到这一点?
现在我正在这样做:
def get_first_letter(row):
return row[0]
df1 = df.reset_index()
df1.first_letter = df1.n.apply(get_first_letter)
有没有更好的办法?
您可以使用该get_level_values
方法来获取索引标签。然后使用str[0]
获取第一个字母:
In [29]: df = pd.DataFrame({'population':[66.03,59.83]}, index=pd.Series(['France','Italy'], name='n')); df
Out[29]:
population
n
France 66.03
Italy 59.83
In [30]: df['first_letter'] = df.index.get_level_values('n').str[0]; df
Out[30]:
population first_letter
n
France 66.03 F
Italy 59.83 I
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句