我正在尝试使用pandas sort_values()函数对datafarame进行排序,但是返回的结果以一种奇怪的方式进行排序,如所附图像所示python -  Pandas sort_values返回意外结果-LMLPHP

最佳答案

问题是列Citation是数字的字符串代表,因此需要通过Series.astype转换为数字:

au_df['Citation'] = au_df['Citation'].astype(int)
au_df_srtd = au_df.sort_values('Citations')

如果由于数字中至少有一个字符串值使用to_numericerrors='coerce'将非数字转换为NaNs而不起作用:
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/

10-09 00:11