Undo/Redo functionality for Pandas DataFrames using Apache Arrow.
Pandoras extends pandas.DataFrame
to add undo/redo capabilities, allowing you to revert accidental modifications easily.
You can install pandoras
via pip:
pip install pandoras
✔ Undo and redo modifications (drop
, rename
, replace
, etc.)
✔ Leverages Apache Arrow for efficient state storage
✔ Supports Pandas' native operations
import pandoras as pd # Now PandorasDataFrame replaces pd.DataFrame
# Create a DataFrame
df = pd.DataFrame({"A": [1, 2, 3], "B": [4, None, 6]})
# Drop a column
df.drop(columns=["B"], inplace=True)
print("After drop:\n", df)
# Undo the drop
df.undo()
print("After undo:\n", df)
# Redo the drop
df.redo()
print("After redo:\n", df)
🚀 Diff-based state tracking instead of storing full DataFrame copies
🚀 Optimize memory usage using compression
Pandoras is open-source and licensed under the MIT License. Contributions are welcome!
- Fork the repo on GitHub
- Clone it locally
- Create a new feature branch
- Submit a pull request
📌 GitHub Repo: https://github.com/al2m4n/pandoras/
📌 PyPI Package: https://pypi.org/project/pandoras/
📌 Author: Arman Bahlakeh
🐼 Pandoras – Making Pandas Undoable! 🎭