pandas.Series.unique()是否保留顺序?

mou*_*hio 14 python pandas

简单的问题我还没有找到答案:

给定一个pandas系列,我认为 Series.unique()给出的值的顺序是它们在系列中首次遇到的顺序,而不是任何排序顺序.即

from pandas import Series
s = Series(['b','b','b','a','a','b'])

s.unique()
>>> array(['b', 'a'], dtype=object)
Run Code Online (Sandbox Code Playgroud)

这是我想要的应用程序的行为,但有人可以告诉我,如果我保证得到这个订单?文件不清楚.

Ret*_*ozi 11

是的,这通常是正确的.pandas对象有序列索引,行直到你告诉他们这样做才会重新洗牌......

  • 这就是为什么熊猫已被创造!熊猫是有序数据.它有一个列顺序和一个索引顺序,它的顺序将一直受到尊重,直到你告诉对象以任何方式重新洗牌.对于大熊猫来说,这是非常惯用的,我甚至没有在文档中明确提到它,因为这就是重点. (5认同)
  • 是的,但是Series.unique()的输出是标准的numpy数组,所以在这种情况下它不一定是真的,是吗?在我实施之前,只想要一个确定的答案. (2认同)
  • 不,``Series.unique``不仅仅是要调用``np.unique``就是这个意思。 (2认同)

T.C*_*tor 5

到目前为止,pandas文档包含以下行:唯一性按出现顺序返回,但不进行排序。