Skip to content

Commit 2e70081

Browse files
committed
speed optimization in DataMatrix.__getitem__
1 parent c471b84 commit 2e70081

File tree

1 file changed

+11
-2
lines changed

1 file changed

+11
-2
lines changed

pandas/core/matrix.py

+11-2
Original file line numberDiff line numberDiff line change
@@ -520,8 +520,17 @@ def __getitem__(self, item):
520520
This is a magic method. Do NOT call explicity.
521521
"""
522522
if isinstance(item, slice):
523-
indexRange = self.index[item]
524-
return self.reindex(indexRange)
523+
new_index = self.index[item]
524+
new_values = self.values[item].copy()
525+
526+
if self.objects is not None:
527+
new_objects = self.objects.reindex(new_index)
528+
else:
529+
new_objects = None
530+
531+
return DataMatrix(new_values, index=new_index,
532+
columns=self.columns,
533+
objects=new_objects)
525534

526535
elif isinstance(item, np.ndarray):
527536
if len(item) != len(self.index):

0 commit comments

Comments
 (0)