Skip to content

Commit ce5caa3

Browse files
committed
implement la[bool_array]
1 parent cf46c43 commit ce5caa3

File tree

2 files changed

+12
-0
lines changed

2 files changed

+12
-0
lines changed

larray/core.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -970,6 +970,9 @@ def translated_key(self, key):
970970
def __getitem__(self, key, collapse_slices=False):
971971
data = np.asarray(self)
972972

973+
if isinstance(key, np.ndarray) and np.issubdtype(key.dtype, bool):
974+
return data[key]
975+
973976
translated_key = self.translated_key(self.full_key(key))
974977

975978
axes = [axis.subaxis(axis_key)

larray/tests/test_la.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -606,6 +606,15 @@ def test_getitem(self):
606606
# la[[1, 5, 9], age['1,5,9']]
607607
self.assertRaises(ValueError, la.__getitem__, ([1, 5], age['1,5']))
608608

609+
def test_getitem_bool_array_key(self):
610+
raw = self.array
611+
la = self.larray
612+
613+
# LArray key
614+
self._assert_equal_raw(la[la < 5], raw[raw < 5])
615+
# ndarray key
616+
self._assert_equal_raw(la[raw < 5], raw[raw < 5])
617+
609618
def test_setitem_larray(self):
610619
"""
611620
tests LArray.__setitem__(key, value) where value is an LArray

0 commit comments

Comments
 (0)