gpt4 book ai didi

python - Numpy Arrays : Slice y-values array based on threshold, 然后相应地对 x 值数组进行切片

转载 作者:行者123 更新时间:2023-12-01 05:57:44 24 4
gpt4 key购买 nike

问题很快,无法通过这些关键字找到答案。执行以下操作的更好方法是什么?

t = linspace(0,1000,300)    
x0 = generic_function(t)

x1 = x0[x0>0.8]
t1 = t[t>t[len(x0)-len(x1)-1]]

我使用 @t1 的操作让我觉得非常不符合 Python 风格且效率低下。有什么指点吗?

最佳答案

IIUC,您可以简单地重复使用剪切后的数组。例如:

>>> from numpy import arange, sin
>>> t = arange(5)
>>> t
array([0, 1, 2, 3, 4])
>>> y = sin(t)
>>> y
array([ 0. , 0.84147098, 0.90929743, 0.14112001, -0.7568025 ])

正如您已经完成的那样,您可以创建一个 bool 数组:

>>> y > 0.8
array([False, True, True, False, False], dtype=bool)

然后您可以使用它来过滤 ty:

>>> t[y > 0.8]
array([1, 2])
>>> y[y > 0.8]
array([ 0.84147098, 0.90929743])

不使用len或涉及单调性假设。

关于python - Numpy Arrays : Slice y-values array based on threshold, 然后相应地对 x 值数组进行切片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11730952/

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