【问题标题】:How to identify unique items in a dataframe?如何识别数据框中的唯一项目?
【发布时间】:2021-05-22 18:39:54
【问题描述】:

我有包含数字的数据集(用于项集挖掘)。数据集如下:

我如何从中识别独特的物品?

我目前的尝试如下:

dataset = pd.read_csv('dataset.csv', sep='\t')
pd.unique(dataset)

但我收到错误消息:ValueError: could not broadcast input array from shape (3000,1) into shape (3000)

【问题讨论】:

    标签: python pandas dataframe data-mining


    【解决方案1】:

    pd.unique 需要 1d 类数组 输入,因此您可以尝试 pd.unique(dataset.values.ravel())

    【讨论】:

      【解决方案2】:

      你的问题不是很清楚。似乎每一行都是一个可变长度的列表。让我猜猜。

      如果您确实希望数据框将所有列表放在一列中,而不是一堆到处都是 NaN 的列,请在 read_csv 之后尝试:

      dataset.apply(lambda x: list(x), axis=1)
      

      如果你想要唯一的行,最简单的方法是:

      uniques = dataset.drop_duplicates(keep='first')
      

      如果您想要特定列的唯一值:

      dataset["column name"].unique()
      

      将返回一个由唯一值组成的 numpy 数组。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-04-24
        • 1970-01-01
        • 1970-01-01
        • 2014-09-11
        • 1970-01-01
        相关资源
        最近更新 更多