等同于pandas.Series.unique()的不可哈希元素

时间:2019-05-24 13:12:48

标签: python pandas

我想知道当pandas.Series.unique()系列包含不可散列的元素(在我的情况下是列表)时,是否具有等效的内容。

例如,使用

>> ds
                   XTR
s0b0_VARC-0.200    [0.05, 0.05]
s0b0_VARC-0.100    [0.05, 0.05]
s0b0_VARC0.000     [0.05, 0.05]
s0b0_VARC0.100     [0.05, 0.05]
s0b1_VARC-0.200    [0.05, 0.05]
s0b1_VARC0.000     [0.05, 0.05]
s0b1_VARC0.100     [0.05, 0.05]
s0b2_VARC-0.200    [0.05, 0.05]
s0b2_VARC-0.100    [0.06, 0.025]
s0b2_VARC0.000     [0.05, 0.05]
s0b2_VARC0.100     [0.05, 0.05]

我想得到

>> ds.unique()
2

1 个答案:

答案 0 :(得分:0)

感谢@ Quang Hoang

this SO answer的启发,我编写了以下函数(不确定其功能如何):

def count_unique_values(series):
    try:
        tuples = [tuple(x) for x in series.values]
        series = pd.Series(tuples)
        nb = len(series.unique())
        print(nb)
    except TypeError:
        nb = len(series.unique())
    return nb