What is going on behind this numpy selection behavior?

Viewed 303

Answering this question, some others and I were actually wrong by considering that the following would work:

Say one has

test = [ [ [0], 1 ],
         [ [1], 1 ]
       ]
import numpy as np
nptest = np.array(test)

What is the reason behind

>>> nptest[:,0]==[1]
array([False, False], dtype=bool)

while one has

>>> nptest[0,0]==[1],nptest[1,0]==[1]
(False, True)


or

>>> nptest==[1]
array([[False,  True],
       [False,  True]], dtype=bool)

or

>>> nptest==1
array([[False,  True],
       [False,  True]], dtype=bool)

Is it the degeneracy in term of dimensions which causes this.

1 Answers
Related