谢谢您先看一下我的帖子。
我有一个名为actions
的2d np.array,形状为(2,x),其中包含int
s
我还有另一个1d np.array keys
,其元素的类型与actions
的第一维相同:actions[0]
。我想从actions
中删除keys
中的所有数组元素。我尝试过diff = actions[:, not actions[0] == kids_keys]
,但它返回的是(1,2,x)形状的3d数组。
如何获得(2,x)diff
数组?
以下内容将淘汰actions
中在集合keys
中具有第一行条目的列:
import numpy as np
x = 10
actions = np.random.randint(5, size=(2,x))
print(actions)
keys = np.array([1,2,3])
print(keys)
filtered_actions = actions[:,~np.sum([actions[0,:] == key for key in keys], dtype=bool, axis=0)]
print(filtered_actions)