Skip to content

Commit c006d4b

Browse files
committed
further simplification using take
1 parent fc6a7ac commit c006d4b

File tree

1 file changed

+4
-5
lines changed

1 file changed

+4
-5
lines changed

pandas/core/frame.py

+4-5
Original file line numberDiff line numberDiff line change
@@ -6259,11 +6259,10 @@ def explode(self, column: Union[str, Tuple]) -> "DataFrame":
62596259
if not self.columns.is_unique:
62606260
raise ValueError("columns must be unique")
62616261

6262-
result = self.copy()
6263-
exploded_col = result.pop(column).reset_index(drop=True).explode()
6264-
result = result.reset_index().join(exploded_col)
6265-
result.set_index(result.columns[: self.index.nlevels].tolist(), inplace=True)
6266-
result.index.names = self.index.names
6262+
df = self.reset_index(drop=True)
6263+
result = df[column].explode()
6264+
result = df.drop([column], axis=1).join(result)
6265+
result.index = self.index.take(result.index)
62676266
result = result.reindex(columns=self.columns, copy=False)
62686267

62696268
return result

0 commit comments

Comments
 (0)