A KPI calculation tool
Project description
KPI Formula Tool Usage Guide
Table of Contents
- Installation
- Basic Usage
- Data Loading
- Data Operations
- Table Operations
- Advanced KPI Calculations
- Data Processing
- Data Export
- Common Issues
- Best Practices
1. Installation
pip install kpi-formula-t5
# For development installation
pip install -e ".[dev]"
# For database support
pip install ".[mysql]" # MySQL support
pip install ".[postgresql]" # PostgreSQL support
2. Basic Usage
from kpi_formula import DataManager
# Initialize manager
manager = DataManager()
3. Data Loading
a) From Files
# Load CSV
manager.load_data('sales.csv', 'sales')
# Load Excel
manager.load_data('customers.xlsx', 'customers')
# Load JSON
manager.load_data('products.json', 'products')
b) From Database
# Connect to database
manager.connect_database("sqlite:///test.db") # SQLite
manager.connect_database("postgresql://user:password@localhost:5432/dbname") # PostgreSQL
manager.connect_database("mysql+pymysql://user:password@localhost:3306/dbname") # MySQL
# Load from table
manager.load_from_table(
table_name='sales_transactions',
name='sales'
)
# Load with SQL query
manager.load_from_query(
"""
SELECT s.*, c.customer_name
FROM sales_transactions s
JOIN customers c ON s.customer_id = c.customer_id
WHERE s.sales_amount > 1000
""",
name='filtered_sales'
)
4. Data Operations
a) Add Calculated Columns
manager.add_column(
data_name='sales',
new_column='unit_price',
expression='sales_amount / quantity'
)
b) Compute Operations
# Sum
total = manager.compute(
data_name='sales',
columns=['sales_amount'],
operation='sum'
)
# Average with grouping
avg_by_region = manager.compute(
data_name='sales',
columns=['sales_amount'],
operation='mean',
group_by='region'
)
Supported operations:
'sum': Sum'mean': Average'median': Median'max': Maximum'min': Minimum'count': Count
5. Table Operations
a) Basic Join
manager.join_datasets(
left_name='sales',
right_name='customers',
on='customer_id',
how='left',
result_name='sales_with_customer'
)
Join Types:
how='left': Left joinhow='right': Right joinhow='inner': Inner joinhow='outer': Outer join
6. Advanced KPI Calculations
from kpi_formula.advanced.kpi_calculator import KPICalculator
# ROI
roi = KPICalculator.roi(revenue=1000, investment=500)
# Conversion Rate
conv_rate = KPICalculator.conversion_rate(
conversions=30,
visitors=1000
)
# Customer Lifetime Value
clv = KPICalculator.customer_lifetime_value(
avg_purchase_value=100,
avg_purchase_frequency=4,
customer_lifespan=3
)
# Gross Margin
margin = KPICalculator.gross_margin(
revenue=1000,
cost=600
)
7. Data Processing
from kpi_formula.advanced.data_processor import DataProcessor
# Moving Average
ma = DataProcessor.moving_average(sales_data, window=3)
# Year-over-Year Growth
yoy = DataProcessor.year_over_year_growth(sales_data)
8. Data Export
a) To Files
# CSV Export
manager.export_data('sales', 'exports/sales.csv')
# Excel Export
manager.export_data(
'sales',
'exports/sales.xlsx',
format='excel',
sheet_name='Sales Data'
)
# JSON Export
manager.export_data(
'sales',
'exports/sales.json',
format='json',
orient='records'
)
b) To Database
manager.save_to_database(
data_name='sales_analysis',
table_name='analysis_results',
if_exists='replace' # 'fail', 'replace', or 'append'
)
9. Common Issues
a) Import Errors
Make sure all required dependencies are installed:
pip install "kpi-formula-t5[all]"
b) Database Connection Errors
- Check connection string format
- Verify database credentials
- Ensure database server is running
- Install appropriate database drivers:
pip install "kpi-formula-t5[mysql]" # for MySQL pip install "kpi-formula-t5[postgresql]" # for PostgreSQL
c) File Path Errors
import os
file_path = os.path.join(os.getcwd(), 'data', 'sales.csv')
manager.load_data(file_path, 'sales')
10. Best Practices
- Always use try-except blocks for error handling
- Validate data before processing
- Use meaningful names for datasets
- Close database connections when done
- Export results regularly
- Monitor memory usage with large datasets
- Use appropriate data types for calculations
For more information and updates, visit:
GitHub Repository
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
kpi_formula_t5-0.2.2.tar.gz
(13.6 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file kpi_formula_t5-0.2.2.tar.gz.
File metadata
- Download URL: kpi_formula_t5-0.2.2.tar.gz
- Upload date:
- Size: 13.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
96dc735657a8e405bd52c6418204c71d63d17cb2f8849de022d63011a2071dee
|
|
| MD5 |
5fe5e60fca569983e8a1889c57f08a44
|
|
| BLAKE2b-256 |
16b656a4449e14a38f6f7c6d17c8b15cdf5e27a7749d5972e2430245c1d609ad
|
File details
Details for the file kpi_formula_t5-0.2.2-py3-none-any.whl.
File metadata
- Download URL: kpi_formula_t5-0.2.2-py3-none-any.whl
- Upload date:
- Size: 13.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1ce194d98cf8dc6456f44ff88602b99d20bcda5d17a9cabd3d13c0f89c59cc79
|
|
| MD5 |
843128e705fb65eb488c4fff8e28f9c7
|
|
| BLAKE2b-256 |
4dd7c4fa3efda69186af03ce733d806b2a28224b3a02ab30824929162209904d
|