【问题标题】:Create new array from a defined array [duplicate]从定义的数组创建新数组[重复]
【发布时间】:2020-10-06 01:55:44
【问题描述】:

如果我有一个数组 a = [1,2,3,4,2,1],我如何创建另一个数组,它显示数组 a 中每个数字重复的次数,例如从数组 a 中,那么新数组将是 b = [2,2,1,1]?这可以使用 NumPy 库中的命令吗?

【问题讨论】:

标签: python arrays numpy repeat


【解决方案1】:

在这种情况下,您可以这样做:

[a.count(i + 1) for i in range(max(a))]

更一般地,查看collections.Counter

【讨论】:

    【解决方案2】:

    我确信有很多方法可以做到这一点。这是一个:

    a = [1,2,3,4,2,1]
    
    count = {}
    for item in a: 
        count[item] = count.get(item, 0) + 1
    
    [v for k,v in count.items()]
    

    结果:

    [2, 2, 1, 1]
    

    【讨论】:

      猜你喜欢
      • 2021-03-09
      • 1970-01-01
      • 2017-08-26
      • 1970-01-01
      • 2018-12-19
      • 2022-11-03
      • 2012-09-22
      • 1970-01-01
      • 2015-08-21
      相关资源
      最近更新 更多