A package for automating ETL processes
Project description
Autogenix ETL Automation
Overview
Autogenix ETL Automation is a Python package designed to simplify and automate Extract, Transform, and Load (ETL) processes. With built-in modules for loading and processing CSV and JSON data, this package provides essential tools for efficient data handling and transformation.
Features
- CSV Loader: Easily load CSV files into Pandas DataFrames with customizable options.
- JSON Loader: Automatically detect the appropriate orientation for JSON data and load it into DataFrames.
- Dynamic Orient Detection: Analyze the structure of JSON data to determine the optimal loading strategy.
Installation
pip install autogenix-etl-automation
Requirements
- Python >= 3.6
- pandas
Usage
CSV Loader
The CsvLoader function reads a CSV file and returns the first n rows.
Example
from autogenix_etl.CsvLoader import CsvLoader
# Load a CSV file and return the first 5 rows
df = CsvLoader("data.csv")
print(df)
# Load a CSV file with custom delimiter and specific columns
df = CsvLoader("data.csv", sep=';', usecols=['name', 'age'])
print(df)
Parameters
- csv_file_name: The name or path of the CSV file.
- n: Number of rows to return (default is 5).
- kwargs: Additional arguments passed to
pandas.read_csv().
JSON Loader
The JSONLoader function reads JSON data and returns a DataFrame.
Example
from autogenix_etl.JSONLoader import JSONLoader
# Load JSON data and return the first 5 rows
df = JSONLoader("data.json")
print(df)
Parameters
- file_path: Path to the JSON file.
- kwargs: Additional arguments passed to
pandas.read_json().
JSON Orient Detection
The package intelligently detects the correct orientation for JSON data (records, split, index, columns, or values) using the determine_orient function.
Example
from autogenix_etl.determine_orient import determine_orient
# Example JSON data
json_data = [
{"name": "John Doe", "age": 30, "city": "New York"},
{"name": "Jane Smith", "age": 25, "city": "Chicago"}
]
orient = determine_orient(json_data)
print(f"Detected orient: {orient}")
License
This project is licensed under the MIT License. See the LICENSE file for details.
Author
Rishikeswaran S
Email
Contributing
Contributions are welcome! Feel free to submit a pull request or open an issue.
Acknowledgments
Special thanks to the open-source community for inspiration and support.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
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 autogenix_etl_automation-0.1.0.tar.gz.
File metadata
- Download URL: autogenix_etl_automation-0.1.0.tar.gz
- Upload date:
- Size: 6.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7e60486bbb72e521671816f6ebda519f6425d07d5e264ff8be7aa9fbe4548f9c
|
|
| MD5 |
a420853f34702ee53af1c4ae69dfd8f4
|
|
| BLAKE2b-256 |
dc64084fb4afaa811992c858413af178aad1a4f0e2d7099cc0ffbc9e921a5b2d
|
File details
Details for the file autogenix_ETL_automation-0.1.0-py3-none-any.whl.
File metadata
- Download URL: autogenix_ETL_automation-0.1.0-py3-none-any.whl
- Upload date:
- Size: 8.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2ab77a88597d9a6efec85ee86c6c9e40afb74fb9424d09596916cf45b29080ed
|
|
| MD5 |
ab70b896bfffa1c5e13b9881acc9460c
|
|
| BLAKE2b-256 |
b0431c8b8482c7ad0f3fea56e2d57e8638dcc76147dba40f8d8701251f820047
|