pandas.Series.unique#

Series.unique()[源代码]#

返回Series对象的唯一值。

按照出现的顺序返回唯一项。基于哈希表的UNIQUE,因此不排序。

退货
Ndarray或ExtensionArray

作为NumPy数组返回的唯一值。请参见注释。

参见

unique

任何一维类似数组的对象的顶级唯一方法。

Index.unique

从Index对象返回具有唯一值的Index。

注意事项

以NumPy数组的形式返回唯一值。如果是扩展阵列支持的系列,新的 ExtensionArray 只返回该类型的唯一值。这包括

  • 直截了当的

  • 期间

  • 带时区的DateTime

  • 间隔

  • 稀疏

  • 整型NA

请参见示例部分。

示例

>>> pd.Series([2, 1, 3, 3], name='A').unique()
array([2, 1, 3])
>>> pd.Series([pd.Timestamp('2016-01-01') for _ in range(3)]).unique()
array(['2016-01-01T00:00:00.000000000'], dtype='datetime64[ns]')
>>> pd.Series([pd.Timestamp('2016-01-01', tz='US/Eastern')
...            for _ in range(3)]).unique()
<DatetimeArray>
['2016-01-01 00:00:00-05:00']
Length: 1, dtype: datetime64[ns, US/Eastern]

分类函数将按出现的顺序返回具有相同数据类型的类别。

>>> pd.Series(pd.Categorical(list('baabc'))).unique()
['b', 'a', 'c']
Categories (3, object): ['a', 'b', 'c']
>>> pd.Series(pd.Categorical(list('baabc'), categories=list('abc'),
...                          ordered=True)).unique()
['b', 'a', 'c']
Categories (3, object): ['a' < 'b' < 'c']