【问题标题】:Creating dictionary from numpy array从 numpy 数组创建字典
【发布时间】:2013-11-28 06:30:32
【问题描述】:

我有一个 numpy 数组,我想从数组中创建一个字典。

更具体地说,我想要一个具有与行对应的键的字典,因此键 1 应该是第 1 行的总和。

s1 是我的数组,我知道如何获取行的总和,但在 numpy.sum(s1[i]),其中 i 是行。

我正在考虑创建一个循环,我可以在其中计算行的总和,然后将其添加到字典中,但我是编程新手,所以我不确定如何执行此操作或是否可行。

有人有什么建议吗?

编辑

我使用 range 函数创建了键值。 然后压缩密钥和数组。

mydict = dict(zip(keys, s1))

【问题讨论】:

    标签: python arrays dictionary numpy


    【解决方案1】:

    我会在精神上与您的 dict(zip(keys, s1)) 做类似的事情,但有两个小改动。

    首先,我们可以使用enumerate,其次,我们可以调用ndarrays的sum方法。示例:

    >>> arr = np.arange(9).reshape(3,3)
    >>> arr
    array([[0, 1, 2],
           [3, 4, 5],
           [6, 7, 8]])
    >>> arr.sum(axis=1)
    array([ 3, 12, 21])
    >>> dict(enumerate(arr.sum(axis=1)))
    {0: 3, 1: 12, 2: 21}
    

    【讨论】:

      猜你喜欢
      • 2017-06-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-08
      • 1970-01-01
      • 2020-04-03
      • 1970-01-01
      • 2020-01-18
      相关资源
      最近更新 更多