gpt4 book ai didi

python - 如何重复numpy数组中的特定元素?

转载 作者:行者123 更新时间:2023-12-04 12:39:01 25 4
gpt4 key购买 nike

我有一个数组a,如果它们是偶数或正数,我想重复a 的元素n 次。我的意思是我只想重复符合某些条件的元素。

如果 a=[1,2,3,4,5]n=2 并且条件是偶数,那么我想要 aa=[1,2,2,3,4,4,5]

最佳答案

一个 numpy 解决方案。使用 np.clipnp.repeat

n = 2
a = np.asarray([1,2,3,4,5])
cond = (a % 2) == 0 #condition is True on even numbers

m = np.repeat(a, np.clip(cond * n, a_min=1, a_max=None))

In [124]: m
Out[124]: array([1, 2, 2, 3, 4, 4, 5])

或者你可以使用 numpy ndarray.clip 而不是 np.clip 来获得更短的命令

m = np.repeat(a, (cond * n).clip(min=1))

关于python - 如何重复numpy数组中的特定元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61431197/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com