【发布时间】:2020-02-07 10:47:15
【问题描述】:
input_data = [np.array(['chicken', 'creamofchickensoup'], dtype=object), np.array(['stickscelery', 'Chicken', 'CreamofChickensoup', 'babycarrots', 'pepper'], dtype=object), np.array(['chicken', 'creamofchickensoup'], dtype=object)]
我想查找此列“input_data”的唯一值。如果使用 pandas.unique(),我收到了这个TypeError: unhashable type: 'numpy.ndarray'
当pd.Series(input_data).value_counts()使用时,结果是
>>> pd.Series(input_data).value_counts()
[chicken, creamofchickensoup] 1
[stickscelery, Chicken, CreamofChickensoup, babycarrots, pepper] 1
[chicken, creamofchickensoup] 1
dtype: int64
[chicken, creamofchickensoup] 的预期值应该是 2。
如何找到列的唯一值 dtype is object?谢谢。
【问题讨论】:
-
你用
pandas.Series试过这个 -
也许尝试排序
tuple代替..?pd.Series(input_data).apply(lambda x: tuple(sorted(x))).value_counts()
标签: python pandas dataframe numpy-ndarray