【问题标题】:Add column of value_counts based on multiple columns根据多列添加 value_counts 列
【发布时间】:2023-02-21 00:10:23
【问题描述】:

所以基本上这个问题等于1770927029791785,不同之处在于我想根据多列而不是一列来计算值。

我有例如

    column1 column2 column3 column4 
1   a       2       True    asdmn
2   b       2       False   asdd
3   c       3       False   asddas
4   a       2       False   grtgv
5   b       1       False   bdfbf

我的结果应该是

    column1 column2 column3 column4  counts
1   a       2       True    asdmn    2
2   b       2       False   asdd     1
3   a       3       False   asddas   1
4   a       2       False   grtgv    2
5   b       1       False   bdfbf    1

如果我没记错的话,之前提到的问题的回答都不适用于这种情况。

【问题讨论】:

    标签: python pandas


    【解决方案1】:

    因此,首先是对here 中的哪些响应有用的几个列进行值计数。基本上我尝试了两个对我有用的选项:

    counts = df.value_counts(['column1', 'column2']).reset_index(name='counts')

    然后我使用 mergedhere 一样:

    counts = df.value_counts(['column1', 'column2']).reset_index(name='counts')
    duplicated_sats.merge(counts, on=['column1', 'column2'])
    

    【讨论】:

      【解决方案2】:

      你可以做:

      df['counts'] = df.groupby(['column1','column2'])['column1'].transform('size')
      

      【讨论】:

        猜你喜欢
        • 2017-11-03
        • 1970-01-01
        • 2013-07-29
        • 2019-07-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-08-29
        相关资源
        最近更新 更多