二进制数据上的熊猫Datframe sort_values

时间:2019-05-04 18:19:28

标签: python pandas dataframe

我是熊猫的新手,我有一个数据框,可以对二进制数据进行排序,以便将数据分隔为0和1。我正在使用df.sort_valuesdf.sort_values会每次都以相同的方式对数据进行排序吗?

编辑: 这是我使用的数据框的示例: enter image description here

我想从第二列的数据框中进行排序。

这是我使用的代码:

sort_data = df.sort_values(['Diagnosis'],axis=0,ascending=True)

1 个答案:

答案 0 :(得分:2)

快速回答者是:它取决于您的排序算法。

存在 stable unstable 排序算法。 sort_values支持稳定的合并排序,但是具有不稳定的默认算法(quick sort)。稳定的排序算法可以使具有相同键的元素的输出保持与输入相同的顺序。

docs

  

种类:{“快速排序”,“合并排序”,“堆排序”},默认为“快速排序”

     

选择排序算法。另请参阅ndarray.np.sort   信息。 mergesort是唯一稳定的算法。对于DataFrame,   此选项仅在对单个列或标签进行排序时适用。

因此,如果您选择一种稳定的算法,它会 每次都以相同的方式对数据进行排序。但是,很高兴知道您使用的排序算法的局限性。网上有一些nice sources可用。