Skip to main content

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


Download files

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

Source Distribution

autogenix_etl_automation-0.1.0.tar.gz (6.0 kB view details)

Uploaded Source

Built Distribution

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

autogenix_ETL_automation-0.1.0-py3-none-any.whl (8.1 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for autogenix_etl_automation-0.1.0.tar.gz
Algorithm Hash digest
SHA256 7e60486bbb72e521671816f6ebda519f6425d07d5e264ff8be7aa9fbe4548f9c
MD5 a420853f34702ee53af1c4ae69dfd8f4
BLAKE2b-256 dc64084fb4afaa811992c858413af178aad1a4f0e2d7099cc0ffbc9e921a5b2d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for autogenix_ETL_automation-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2ab77a88597d9a6efec85ee86c6c9e40afb74fb9424d09596916cf45b29080ed
MD5 ab70b896bfffa1c5e13b9881acc9460c
BLAKE2b-256 b0431c8b8482c7ad0f3fea56e2d57e8638dcc76147dba40f8d8701251f820047

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