在 numpy 中查找匹配条件的子数组
Find subarrays that match condition in numpy
Suppsoe 我有一个大小为 10 的数组:
x = np.linspace(0.1, 1, 10)
我在这些 x 处有一个函数值数组:
fx = np.sin(x)
现在我有一个 x
的子数组,比方说,
sub_x = x[::2]
如何在sub_x
中的子点提取fx
的值?即,
fx[indices of x that are in sub_x]
这不起作用:fx[x == sub_x]
。
应该这样做:
fx[np.in1d(x, sub_x)]
您可以使用 np.isin
作为:
fx[np.isin(x, sub_x)]
Suppsoe 我有一个大小为 10 的数组:
x = np.linspace(0.1, 1, 10)
我在这些 x 处有一个函数值数组:
fx = np.sin(x)
现在我有一个 x
的子数组,比方说,
sub_x = x[::2]
如何在sub_x
中的子点提取fx
的值?即,
fx[indices of x that are in sub_x]
这不起作用:fx[x == sub_x]
。
应该这样做:
fx[np.in1d(x, sub_x)]
您可以使用 np.isin
作为:
fx[np.isin(x, sub_x)]