python - 一维 NumPy 数组中最后一个值的地址

标签 python arrays numpy

我有一个零散布的一维数组。想创建第二个数组,其中包含最后一个零的位置,如下所示:

>>> a = np.array([1, 0, 3, 2, 0, 3, 5, 8, 0, 7, 12])
>>> foo(a)
[0, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3]

是否有内置的 NumPy 函数或广播技巧可以在不使用 for 循环或其他迭代器的情况下执行此操作?

最佳答案

>>> (a == 0).cumsum()
array([0, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3])

关于python - 一维 NumPy 数组中最后一个值的地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39022027/

相关文章:

python - 屏蔽字符串的一部分

python - 有没有更 Pythonic 的方法来获取 Linux 上可用磁盘设备名称的列表?

javascript - 难以访问 api 返回 json 数组中的信息。我究竟做错了什么?

python - R、C 和 Python 中的 Pseudoinverse 不同结果

python - 在 pandas 中,如何选择包含 NaN 的行?

python - 如何使用 python 创建 .rar 文件?

python - 在Python中使用静态地址和偏移量从进程读取内存地址

java - 生成某些数字范围的所有排列的序列第二部分

PHP array_reduce 初始参数为数组

python - 如何将 astropy 表的标题和单位保存到 ascii 文件中