Return 值 < 40 的布尔数组
Return a boolean array of values < 40
如何从下面给定的数组中获取值 <40 的布尔值 1 维输出。因为有三个值 <40 所以输出应该是: array([ True, True, True])
x = np.array([[40, 37, 70],[62, 61, 98],[65, 89, 22],[95, 98, 81],[44, 32, 79]])
你可以这样做:
import numpy as np
x = np.array([[40, 37, 70],[62, 61, 98],[65, 89, 22],[95, 98, 81],[44, 32, 79]])
x<40
输出:
array([[False, True, False],
[False, False, False],
[False, False, True],
[False, False, False],
[False, True, False]])
或者如果你想要一维结果,你可以使用.flatten()
:
y = x.flatten()
y<40
输出:
array([False, True, False, False, False, False, False, False, True,
False, False, False, False, True, False])
如果你想要像 [True]*n
这样的一维列表,其中 n 是值的数量 <40
,你可以这样做:
np.array([i for i in x.flatten()<40 if i])
输出:
array([True, True, True])
这可以通过多种方式解决,一种可能是:
x[x<40]<40
如何从下面给定的数组中获取值 <40 的布尔值 1 维输出。因为有三个值 <40 所以输出应该是: array([ True, True, True])
x = np.array([[40, 37, 70],[62, 61, 98],[65, 89, 22],[95, 98, 81],[44, 32, 79]])
你可以这样做:
import numpy as np
x = np.array([[40, 37, 70],[62, 61, 98],[65, 89, 22],[95, 98, 81],[44, 32, 79]])
x<40
输出:
array([[False, True, False],
[False, False, False],
[False, False, True],
[False, False, False],
[False, True, False]])
或者如果你想要一维结果,你可以使用.flatten()
:
y = x.flatten()
y<40
输出:
array([False, True, False, False, False, False, False, False, True,
False, False, False, False, True, False])
如果你想要像 [True]*n
这样的一维列表,其中 n 是值的数量 <40
,你可以这样做:
np.array([i for i in x.flatten()<40 if i])
输出:
array([True, True, True])
这可以通过多种方式解决,一种可能是:
x[x<40]<40