我正在尝试使用pandas sort_values()函数对datafarame进行排序,但是返回的结果以一种奇怪的方式进行排序,如所附图像所示
最佳答案
问题是列Citation
是数字的字符串代表,因此需要通过Series.astype
转换为数字:
au_df['Citation'] = au_df['Citation'].astype(int)
au_df_srtd = au_df.sort_values('Citations')
如果由于数字中至少有一个字符串值使用
to_numeric
和errors='coerce'
将非数字转换为NaN
s而不起作用:au_df['Citation'] = pd.to_numeric(au_df['Citation'], errors='coerce')
au_df_srtd = au_df.sort_values('Citations')
关于python - Pandas sort_values返回意外结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58706842/