numpy數組的布爾索引和數組索引

先創建一個names一維數組,再用numpy.random中的randn函數生成一個7*4數組:

>>names=np.array(["Bob","Joe","Will","Bob","Will","Joe","Joe"])
>>data=np.random.randn(7,4)

1.對names和字符串“Bob”的比較運算將會產生一個布爾型數組:

>>> names=="Bob"
array([ True, False, False,  True, False, False, False], dtype=bool) 得到該數組用於下面索引的實驗

2.將這個布爾型數組用於數組索引:

>>> data[names=="Bob"]
array([[ 0.10298484, -0.25113445, -0.78464202, -0.54631363],
       [ 0.28620158,  0.1481723 , -1.27040048,  0.29133364]])

取data數組的第1、4行

3.將布爾型數組跟切片混合使用:

>>> data[names=="Bob",2:]
array([[-0.78464202, -0.54631363],
       [-1.27040048,  0.29133364]])

取data的第1、4行,並且只取第3列及之後列的元素

注:得到上面的結果要知道數組索引,參考其他資料

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章