我的代码检测阈值下的所有点,然后定位起始点和结束点。
below = np.where(self.data < self.threshold)[0]
startandend = np.diff(below)
startpoints = np.insert(startandend, 0, 2)
endpoints = np.insert(startandend, -1, 2)
startpoints = np.where(startpoints>1)[0]
endpoints = np.where(endpoints>1)[0]
startpoints = below[startpoints]
endpoints = below[endpoints]在这里,我不太懂after np.where()函数的用法。
发布于 2018-10-04 15:06:56
below = np.where(self.data < self.threshold)[0]指:
从np.where()返回的ndarray元组中获取第一个元素,并将其分配给
below。
发布于 2018-11-15 19:35:22
np.where是很棘手的。它返回一个数组,该数组包含满足条件的索引的列表,即使条件从未满足。特别是在np.where(my_numpy_array==some_value)[0]的情况下,这意味着您需要数组中的第一个值,它是一个列表,它包含条件满足单元格的索引列表。
一口大口。简单地说,np.where(array==x)[0]返回满足条件的索引列表。我猜这是为广泛的应用程序设计numpy的结果。
请记住,没有匹配仍然返回空列表;可能会导致像only size-1 arrays can be converted to python (some type)这样的错误。
https://stackoverflow.com/questions/52649568
复制相似问题