我正在使用python(jupyter notebook)进行一些分析。我想通过函数sort_values()在我的熊猫数据框中对我的值进行排序。首先看起来它工作正常,但它只用于排序2个字符的数字(见图)。我该怎么做才能正确地为国家/地区排序值> 99?
答案 0 :(得分:2)
问题值为string
s,因此按字典顺序排序。
所以首先需要转换为数字:
df4 = df4.astype(int)
<强>示例强>:
df4 = pd.Series(['102','11','10','10', '119', '14'])
print (df4)
0 102
1 11
2 10
3 10
4 119
5 14
dtype: object
print (df4.sort_values())
2 10
3 10
0 102
1 11
4 119
5 14
dtype: object
df4 = df4.astype(int)
print (df4.sort_values())
2 10
3 10
1 11
5 14
0 102
4 119
dtype: int32