【问题标题】:count the unique occurrence of a col based on other col value [duplicate]根据其他 col 值计算 col 的唯一出现次数[重复]
【发布时间】:2021-12-27 22:38:32
【问题描述】:

我有以下数据框:

Item Type Value
item1 A1 11
item1 A1 12
item2 A1 21
item2 A1 22
item3 A1 31
item3 A1 11
item4 A1 12
item4 A1 21
item5 A2 22
item5 A2 31

当 type=A1 时,如何计算每个项目的唯一出现次数?在上面的例子中,它应该是 4

我在想这样的事情:

df['Type']=='A1'
list=df['Item'].unique()
occurance=list.str.len()

有没有更好更简单的方法来做到这一点?

【问题讨论】:

标签: python pandas


【解决方案1】:

你可以使用这个班轮:df[df['Type']=='A1'][['Item']].drop_duplicates()

然后你可以根据需要将输出转换为列表。

【讨论】:

    【解决方案2】:
    len(df.loc[df["Type"]=="A1"]["Item"].unique())
    

    【讨论】:

      【解决方案3】:

      用途:

      df.groupby('Type')['Item'].nunique()
      

      输出:

      Type
      A1    4
      A2    1
      

      只有 A1:

      df.groupby('Type')['Item'].nunique()['A1']
      

      输出:4

      【讨论】:

        猜你喜欢
        • 2012-10-25
        • 1970-01-01
        • 1970-01-01
        • 2015-02-12
        • 2022-08-16
        • 2019-10-11
        • 2020-10-07
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多