numpy数组的总和行,其中每个总和的起始索引来自另一个数组

丹尼尔·桑克

我有一个NxM名为numpy数组data我也有一个N名为的长度数组start_indices我想要一个新的长度M数组,其中ith元素是sum(data[i][start_indices[i]:])

这是一种实现方法:

import numpy as np
data = np.linspace(0, 11, 12).reshape((3, 4))
data
array([[0, 1, 2, 3],
       [4, 5, 6, 7],
       [8, 9, 10, 11]])
start_indices = np.array([0, 1, 2])
sums = []
for start_index, row in zip(start_indices, data):
    sums.append(np.sum(row[start_index:]))
sums = np.array(sums)

还有更多的numpythonic方式吗?

贝扎德·努里

您可以创建遮罩数组

>>> mask = start_indices[:,None] <= np.arange(data.shape[1])
>>> (data * mask).sum(axis=1)
array([  6.,  18.,  21.])

为此,您还可以使用最后一步np.einsum

>>> np.einsum('ij,ij->i', data, mask)
array([  6.,  18.,  21.])

尽管在这里使用掩码数组可能效率不高,并且会迭代太多索引。

或者,np.fromiter

>>> it = (r[i:].sum() for r, i in zip(data, start_indices))
>>> np.fromiter(it, data.dtype)
array([  6.,  18.,  21.])

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

numpy索引嵌套数组,其中包含来自另一个数组的索引

来自分类Dev

使用 numpy,如何生成一个数组,其中每个索引的值是第二个数组中从 0 到同一索引的值的总和?

来自分类Dev

numpy数组中的索引,其中另一个数组中的slice

来自分类Dev

numpy数组中的索引,其中另一个数组中的slice

来自分类Dev

使用NumPy索引一个数组与另一个数组

来自分类Dev

数组的总和,条件在另一个数组中

来自分类Dev

numpy测试是否每个值在另一个数组的行中

来自分类Dev

用另一个数组索引一个numpy数组

来自分类Dev

用另一个数组索引一个numpy数组

来自分类Dev

在另一个3个值的总和中找到一个数组中的最大值

来自分类Dev

根据另一个数组中的值对numpy数组的选择索引执行操作

来自分类Dev

numpy:从数组中获取索引位于另一个数组中的值

来自分类Dev

从另一个数组更新numpy 2d数组索引

来自分类Dev

使用另一个数组的索引切片numpy数组

来自分类Dev

根据另一个数组中的值对numpy数组的选择索引执行操作

来自分类Dev

PHP总和数组值基于另一个数组中的文本重复项

来自分类Dev

如何使用来自另一个数组的值更新一个NumPy数组?

来自分类Dev

拆分数组,但每个数组的总和不超过最大值,否则推送到下一个数组索引

来自分类Dev

来自包含对象的数组的对象,其中对象的值包含在另一个数组中

来自分类Dev

如何有效地将一个数组中某个值在另一个数组中的位置上出现的总和

来自分类Dev

将一个 numpy 数组与另一个数组的每个元素进行比较

来自分类Dev

从另一个数组获取匹配索引

来自分类Dev

在另一个数组中查找一个数组的匹配索引

来自分类Dev

创建一个数组,其中键是唯一的,重复键的值将是键的总和

来自分类Dev

从每个数组中提取一个数字,以使数字总和为0?

来自分类Dev

另一个数组中的numpy查找元素索引

来自分类Dev

我如何创建一个数组,两个数组,一个从0到100,另一个是第一个数组的运行总和?

来自分类Dev

Numpy用另一个数组的值总结一个数组

来自分类Dev

创建字典,其中键来自一个列表,值是另一个列表中相应元素的总和

Related 相关文章

  1. 1

    numpy索引嵌套数组,其中包含来自另一个数组的索引

  2. 2

    使用 numpy,如何生成一个数组,其中每个索引的值是第二个数组中从 0 到同一索引的值的总和?

  3. 3

    numpy数组中的索引,其中另一个数组中的slice

  4. 4

    numpy数组中的索引,其中另一个数组中的slice

  5. 5

    使用NumPy索引一个数组与另一个数组

  6. 6

    数组的总和,条件在另一个数组中

  7. 7

    numpy测试是否每个值在另一个数组的行中

  8. 8

    用另一个数组索引一个numpy数组

  9. 9

    用另一个数组索引一个numpy数组

  10. 10

    在另一个3个值的总和中找到一个数组中的最大值

  11. 11

    根据另一个数组中的值对numpy数组的选择索引执行操作

  12. 12

    numpy:从数组中获取索引位于另一个数组中的值

  13. 13

    从另一个数组更新numpy 2d数组索引

  14. 14

    使用另一个数组的索引切片numpy数组

  15. 15

    根据另一个数组中的值对numpy数组的选择索引执行操作

  16. 16

    PHP总和数组值基于另一个数组中的文本重复项

  17. 17

    如何使用来自另一个数组的值更新一个NumPy数组?

  18. 18

    拆分数组,但每个数组的总和不超过最大值,否则推送到下一个数组索引

  19. 19

    来自包含对象的数组的对象,其中对象的值包含在另一个数组中

  20. 20

    如何有效地将一个数组中某个值在另一个数组中的位置上出现的总和

  21. 21

    将一个 numpy 数组与另一个数组的每个元素进行比较

  22. 22

    从另一个数组获取匹配索引

  23. 23

    在另一个数组中查找一个数组的匹配索引

  24. 24

    创建一个数组,其中键是唯一的,重复键的值将是键的总和

  25. 25

    从每个数组中提取一个数字,以使数字总和为0?

  26. 26

    另一个数组中的numpy查找元素索引

  27. 27

    我如何创建一个数组,两个数组,一个从0到100,另一个是第一个数组的运行总和?

  28. 28

    Numpy用另一个数组的值总结一个数组

  29. 29

    创建字典,其中键来自一个列表,值是另一个列表中相应元素的总和

热门标签

归档