Skip to main content

Undo/Redo functionality for Pandas DataFrames using Apache Arrow

Project description

Pandoras 🐼🎭

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.

🚀 Installation

You can install pandoras via pip:

pip install pandoras

📌 Features

Undo and redo modifications (drop, rename, replace, etc.)
Leverages Apache Arrow for efficient state storage
Supports Pandas' native operations


💡 Example Usage

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)

🔮 Future Improvements

🚀 Diff-based state tracking instead of storing full DataFrame copies
🚀 Optimize memory usage using compression


🌜 License

Pandoras is open-source and licensed under the MIT License. Contributions are welcome!

🤝 Contributing

  1. Fork the repo on GitHub
  2. Clone it locally
  3. Create a new feature branch
  4. Submit a pull request

🌍 Connect

📌 GitHub Repo: https://github.com/al2m4n/pandoras/
📌 PyPI Package: https://pypi.org/project/pandoras/
📌 Author: Arman Bahlakeh


🐼 Pandoras – Making Pandas Undoable! 🎭

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pandoras-0.1.1.tar.gz (3.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pandoras-0.1.1-py3-none-any.whl (3.9 kB view details)

Uploaded Python 3

File details

Details for the file pandoras-0.1.1.tar.gz.

File metadata

  • Download URL: pandoras-0.1.1.tar.gz
  • Upload date:
  • Size: 3.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.1 CPython/3.13.2 Darwin/23.6.0

File hashes

Hashes for pandoras-0.1.1.tar.gz
Algorithm Hash digest
SHA256 f647a13f91e7eb00f047d4e1f11c64b8ad4f24785fb0a97dc6c278c7f57e9181
MD5 33b2fe550ff2d4b7cca71b2f21d0bbc9
BLAKE2b-256 e21146a1b90b62fe203ff266fffdc9844b6bd19e349fd0ec3cb353312b1dd03d

See more details on using hashes here.

File details

Details for the file pandoras-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: pandoras-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 3.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.1 CPython/3.13.2 Darwin/23.6.0

File hashes

Hashes for pandoras-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 74ce1f4d9286c2b2768e479056ffd5f5a289a98f5d331405df9b063c5cd38424
MD5 60e32ff7fc2764182e829b44ea04722e
BLAKE2b-256 7af5033bd53322b0d3660cf6485564cea660d8ebb2309dbc571787369477b969

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page