Skip to main content

Frameon extends pandas DataFrame with analysis methods while keeping all original functionality intact.

Project description

Frameon

PyPI Version Python Versions Documentation Status Tests codecov Dependabot License

Frameon extends pandas DataFrame with analysis methods while keeping all original functionality intact.


✨ Key Features

  • Seamless integration: Works with existing pandas DataFrames and Series
  • Non-intrusive: All pandas methods remain unchanged and fully available
  • Modular access: Additional functionality organized in clear namespaces
  • Dual-level access: Methods available for both entire DataFrames and individual columns

📦 Installation

Recommended: Use a virtual environment to prevent potential conflicts with existing package versions in your system.

Basic Installation

Using pip

pip install frameon

Using poetry

poetry add frameon

Installation with Virtual Environment

Python's built-in venv

# Create virtual environment
python -m venv frameon_env

# Activate it
source frameon_env/bin/activate 

# Install frameon
pip install frameon

Using poetry (manages virtual env automatically)

# Navigate to your project directory
poetry init  # if starting new project
poetry add frameon

🚀 Quick Start

import pandas as pd
from frameon import FrameOn as fo

# Create or load your DataFrame
df = pd.read_csv('your_data.csv')

# Add Frameon functionality
df = fo(df)

# Explore your data
df.explore.info()           # For entire DataFrame
df['price'].explore.info()  # For individual column

📚 Documentation

For complete documentation including API reference and more examples, visit:
Frameon Documentation


🧪 Examples

Data Exploration

Quickly explore your data:

from frameon import load_dataset, FrameOn as fo

titanic = fo(load_dataset('titanic'))
titanic['age'].explore.info()

Cohort Analysis

Quickly visualize user retention with a cohort heatmap:

from frameon import load_dataset, FrameOn as fo

superstore = fo(load_dataset('superstore'))
fig = superstore.analysis.cohort(
    user_id_col='Customer ID', 
    date_col='Order Date', 
    revenue_col='Sales',
    granularity='quarter',
    include_period0=False,
)
fig.show()

Statistical Tests

Compare groups using bootstrap:

from frameon import load_dataset, FrameOn as fo

titanic = fo(load_dataset('titanic'))
titanic.stats.bootstrap(
    dv='age',
    between='alive',
    reference_group='no',
    statistic='mean_diff',
    plot=True
)

🔧 API Overview

Frameon provides methods through these namespaces:

Namespace Description DataFrame Series
.explore Data exploration and quality checks
.preproc Data preprocessing and cleaning
.analysis Advanced analytical methods
.viz Visualization methods
.stats Statistical tests and analysis

⚙️ Built With

Frameon utilizes these foundational libraries:


🤝 Contributing

We welcome contributions! Here's how to help:

  1. 🐛 Report bugs via GitHub Issues
  2. 📥 Submit PRs for new features
  3. 📖 Improve documentation

See our Contributing Guidelines for details.


📜 License

Frameon is licensed under the MIT License.

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

frameon-0.1.0.tar.gz (1.5 MB view details)

Uploaded Source

Built Distribution

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

frameon-0.1.0-py3-none-any.whl (1.5 MB view details)

Uploaded Python 3

File details

Details for the file frameon-0.1.0.tar.gz.

File metadata

  • Download URL: frameon-0.1.0.tar.gz
  • Upload date:
  • Size: 1.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.1 CPython/3.13.3 Linux/6.15.3-1-MANJARO

File hashes

Hashes for frameon-0.1.0.tar.gz
Algorithm Hash digest
SHA256 fa7e99dc5ad9f2e7dd97916fc0ff19b85ac127edf5aceac8fe7898dd5f840c5a
MD5 4a25fd358ee7f236ca8ab2c69271139f
BLAKE2b-256 95568b3a7cca61c8d69e64bab4e1f2efef6642bbffc0df58b2c5dfd599ef615d

See more details on using hashes here.

File details

Details for the file frameon-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: frameon-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 1.5 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.1 CPython/3.13.3 Linux/6.15.3-1-MANJARO

File hashes

Hashes for frameon-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ea6326670a091bfebefbbf65df057d26c1e7e14a6030dfbee143a2597590a902
MD5 f5170aaccc579b57f64d0d9eb5f210c6
BLAKE2b-256 e23bc6235b94acdb9b3acdee2bb8aeeae57c6f4d6d15f3a902fa39595d352a30

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