在 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)]