NumPy Boolean Array dalam Indeks [duplikat]
Sep 20 2020
Katakanlah kita memiliki dua array
a = np.array([1,2,3,4]).reshape(2,2)
b = np.array([True, False, False, True]).reshape(2,2)
memberi
a = [[1, 2],
[3, 4]]
b = [[True, False],
[False, True]]
Kita bisa melakukan a [b] untuk mendapatkan hanya nilai b yang benar memberi kita [1, 4]
Saya mencoba melakukan [bukan b] untuk mendapatkan yang palsu tetapi mendapat kesalahan. Saya tahu saya bisa melakukannya a[b == False]tetapi ingin melakukannya dengan cara Pythonic.
Ada solusi?
Jawaban
1 a_guest Sep 20 2020 at 03:59
Anda dapat menggunakan salah satu np.logical_notatau ~operator :
>>> a[np.logical_not(b)]
>>> a[~b]
Kiat Pemilik Anjing yang Bermanfaat: Mengapa Penting untuk Membiarkan Anjing Anda Mengendus di Jalan
Jana Duggar: Semua yang Dia Katakan Tentang Cinta dan Jendela 5 Tahunnya untuk Menemukan 'Yang Satu'