【问题标题】:Find the most common occurrence of a series of numbers in a N x 4 array在 N x 4 数组中查找最常见的一系列数字
【发布时间】:2021-02-17 11:48:31
【问题描述】:

我有一个 1M 行和 4 列的数组。我想在所有列中找到最常见的一系列数字。即,如果 8.1, -3.2, 3.4, 5.1 出现的最大次数,我想得到它,如果可能的话,行的索引。

我正在尝试使用 Python 的集合/计数器,但似乎无法得到我需要的东西。有什么建议吗?

【问题讨论】:

    标签: python pandas counter


    【解决方案1】:

    每列使用Series.mode,并选择Series的第一个值:

    s = df.apply(lambda x: x.mode().iat[0])
    

    然后对于索引比较 SeriesDataFrame.eq 中的值并创建字典:

    ind = {k: v.index[v].tolist() for k, v in df.eq(s).items()}
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-03
      • 2013-02-21
      • 2017-12-14
      • 2021-03-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-25
      相关资源
      最近更新 更多