Skip to content

Commit 64f5173

Browse files
Gabe SmallGabe Small
Gabe Small
authored and
Gabe Small
committed
fixed issues with local variable
1 parent 3539ac6 commit 64f5173

File tree

1 file changed

+10
-10
lines changed

1 file changed

+10
-10
lines changed

pandas/core/reshape/reshape.py

+10-10
Original file line numberDiff line numberDiff line change
@@ -397,22 +397,22 @@ def _repeater(self) -> np.ndarray:
397397
# In this case, we remap the new codes to the original level:
398398
repeater = self.removed_level_full.get_indexer(self.removed_level)
399399
if self.lift:
400-
na_index = (self.index.codes[self.level] == -1).nonzero()[0][0]
401-
repeater = np.insert(repeater, na_index, -1)
402-
400+
if not self.sort:
401+
na_index = (self.index.codes[self.level] == -1).nonzero()[0][0]
402+
repeater = np.insert(repeater, na_index, -1)
403+
else:
404+
repeater = np.insert(repeater, 0, -1)
403405
else:
404406
# Otherwise, we just use each level item exactly once:
405407
stride = len(self.removed_level) + self.lift
406408
if self.sort or not self.lift:
407-
repeater = np.arange(stride) - self.lift
409+
repeater = np.arange(stride)
408410
else:
409-
# move the -1 to the position at na_index
410411
na_index = (self.index.codes[self.level] == -1).nonzero()[0][0]
411-
repeater = np.arange(stride)
412-
if na_index:
413-
repeater[na_index] = -1
414-
if (na_index + 1) < len(repeater):
415-
repeater[na_index + 1 :] -= 1
412+
repeater = np.arange(stride) - self.lift
413+
if self.na:
414+
repeater[self.na] = -1
415+
repeater[: self.na] += 1
416416

417417
return repeater
418418

0 commit comments

Comments
 (0)