在嵌套的numpy数组上应用掩码-numpy-python
问起来有点尴尬,因为有大量关于Numpy的文档,但我一直在做这个简单的任务,即获取嵌套Numpy表示中掩码为true的所有记录(相当于在嵌套的numpy数组上应用掩码-numpy-python,python,arrays,numpy,indexing,slice,Python,Arrays,Numpy,Indexing,Slice,问起来有点尴尬,因为有大量关于Numpy的文档,但我一直在做这个简单的任务,即获取嵌套Numpy表示中掩码为true的所有记录(相当于pandas中的dataframe.loc[cond]): 但结果不是我想要的 事实上,从组合中: [['1' '2' '3'] ['a' 'b' 'c'] ['luca' 'paolo' 'francesco'] ['True' 'False' 'False']] 它通过组合[combination[3]=='True']产生: array([['1',
pandas
中的dataframe.loc[cond]
):
但结果不是我想要的
事实上,从组合中
:
[['1' '2' '3']
['a' 'b' 'c']
['luca' 'paolo' 'francesco']
['True' 'False' 'False']]
它通过组合[combination[3]=='True']
产生:
array([['1', '2', '3']],
dtype='<U11')
你知道我做错了什么吗
注:不,我不能在熊猫中这样做,因为熊猫在将其转换为
熊猫时,我的RAM会爆炸。数据帧我相信您只是缺少其他维度的索引:
combination[combination[3] == 'True']
应该是
combination[:, combination[3] == 'True']
注意冒号
这将产生一个新的数组,它在所有第一维度上建立索引,而在第二维度上仅为0。意识到这一点后,我想砸碎键盘。谢谢你的快速回答!
combination[combination[3] == 'True']
combination[:, combination[3] == 'True']