我有一个形状为1 x N的numpy布尔向量,以及一个形状为160 x N的2d数组。对2d数组的列进行子集设置的快速方法是什么,以便对于布尔向量的每个索引具有True在其中保留该列,并且对于其中包含False的布尔向量的每个索引,该列是否被丢弃?
如果调用矢量掩码和数组功能,我发现以下操作太慢了:np.array([f[mask] for f in features])
有更好的方法吗?我觉得一定有,对吧?
答案 0 :(得分:0)
您可以尝试一下,
new_array = 2d_array[:,bool_array==True]
因此,根据轴,您可以选择要删除的轴。如果得到一维阵列,则可以对其进行整形并获得所需的阵列。这种方法也会更快。