【问题标题】:Get value_counts() for values of a dictionary [duplicate]获取字典值的 value_counts() [重复]
【发布时间】:2019-10-20 04:06:02
【问题描述】:

我非常熟悉如何从pd.Series 返回value_counts。但是,如何从字典的值中获取值计数?

假设我在字典L 中有以下元组:

L = {1: (13600, 14797),
     2: (14700, 14700),
     3: (14700, 10400),
     4: (14600, 17200),
     5: (13600, 14797),
     6: (14600, 17200),
     7: (14700, 10400),
     8: (14700, 10400),
     9: (12800, 14770)}

我如何从L 获得value_counts,看起来像:

(14700, 10400) 3
(13600, 14797) 2
(14600, 17200) 2
(14700, 14700) 1
(12800, 14770) 1

这是我目前所拥有的。但是,我认为字典键 1-9 会妨碍我,因为我收到错误 list object is not callable.

list = [(k, v) for k, v in L.items()] 
S = set(L)
F = {}
for i in list(S):
    F[i] = list.count(i)

【问题讨论】:

    标签: python dictionary counter


    【解决方案1】:

    使用标准库中的collections.Counter

    Counter(L.values())
    

    【讨论】:

      【解决方案2】:

      也许使用from collections import Counter 是个好主意?

      from collections import Counter 
      dict(Counter([j for i,j in L.items()]))
      

      【讨论】:

        【解决方案3】:

        你可以试试这个:

        L = {1: (13600, 14797),
             2: (14700, 14700),
             3: (14700, 10400),
             4: (14600, 17200),
             5: (13600, 14797),
             6: (14600, 17200),
             7: (14700, 10400),
             8: (14700, 10400),
             9: (12800, 14770)}
        vals = [ v for v in L.values()]
        counts = []
        for i in vals:
            counts.append((i, vals.count(i)))
        set(counts)
        

        【讨论】:

          【解决方案4】:

          你提到pandas.Series.value_counts(),你为什么不试试

          pd.Series(L).value_counts()
          

          给出:

          (14700, 10400)    3
          (14600, 17200)    2
          (13600, 14797)    2
          (12800, 14770)    1
          (14700, 14700)    1
          dtype: int64
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2013-01-02
            • 1970-01-01
            • 2020-04-18
            • 1970-01-01
            • 2017-04-29
            • 2013-11-15
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多