首页 > 解决方案 > Pandas 的 sort_values 函数没有按预期工作?

问题描述

我有这个包含 6 列的数据框,我正在尝试对“样本类型”列进行排序。我的数据框如下所示:

df = pd.DataFrame({'Sample ID': [1,2,3], 'Sample Type':[Metastatis, Metastasis, Primary],
})

我使用了 sort_values() 函数,如下所示:

df.sort_values(by = ['Sample Type'])

我希望看到的是数据框在 Sample Type 列上排序,返回按字母顺序排序的数据框。但是,返回的是具有交替样本类型的数据框,这清楚地表明我期望的排序没有发生。

我是否错误地使用了该功能?请指出我忽略的任何错误。谢谢

标签: pythonpandas

解决方案


df = pd.DataFrame({'Sample ID': [1,2,3], 'Sample Type':['Metastatis', 'Metastasis', 'Primary'],
})

df

    Sample ID   Sample Type
0   1           Metastatis
1   2           Metastasis
2   3           Primary

df.sort_values(by='Sample Type')

    Sample ID   Sample Type
1   2           Metastasis
0   1           Metastatis
2   3           Primary

df.sort_values(by='Sample Type', ascending=False)

Sample ID   Sample Type
2       3   Primary
0       1   Metastatis
1       2   Metastasis

推荐阅读