Skip to main content

TaGra: TAbular data preprocessing to GRAph representation.

Project description

TaGra (Table to Graph)

TaGra is a comprehensive Python library designed to simplify the preprocessing of data, the construction of graphs from data tables, and the analysis of those graphs. It provides automated tools for handling missing data, scaling, encoding, and graph construction, making it easier for data scientists and researchers to focus on their analysis and results.

Features

  • Automated Data Preprocessing: Clean and transform your data with options for handling missing values, scaling, encoding, and more.
  • Graph Construction: Build graphs from data tables using various methods such as K-Nearest Neighbors (KNN), distance thresholds, and similarity measures.
  • Graph Analysis: Perform statistical analysis on graphs, including degree distribution, centrality measures, community detection, and neighbor analysis.
  • Visualization: Generate insightful visualizations to understand your data and graph structures.

Installation

To install TaGra, simply use pip:

pip install tagra

Quickstart

python3 examples/examples_usage.py -c examples/example_config.json

You can edit the option in examples/example_config.json and adapt them as you wish. The default option will produce a prepreocessing and a graph based on the moons dataset (SciKit Learn).

Usage

Data Preprocessing

from tagra.preprocessing import preprocess_dataframe

# Example usage
df = preprocess_dataframe(
    input_path='data.csv',
    output_path=None,
    numeric_columns=[],
    categorical_columns=[],
    unknown_column_action='infer',
    ignore_columns=[],
    numeric_threshold=0.05,
    numeric_scaling='standard',
    categorical_encoding='one-hot',
    nan_action='infer',
    nan_threshold=0.6,
    verbose=True,
    manifold_learning=None,
    manifold_dimension=2
)

Graph construction

from tagra.graph import construct_graph

Example usage

graph = construct_graph( data_path='data.csv', preprocessed_data_path=None, method='knn', k=5, output_path=None, verbose=True )

Graph Analysis

from tagra.analysis import analyze_graph

# Example usage
results = analyze_graph(
    graph_path='graph.pickle',
    degree_distribution=True,
    centrality_measures=['closeness', 'giant_connected_component'],
    community_detection='hierarchical',
    neighbor_analysis=True,
    attribute=None
)

Detailed Documentation

For a comprehensive guide on how to use each feature of TaGra, including detailed parameter descriptions and additional examples, please refer to the full documentation.

Contributing

We welcome contributions from the community. If you would like to contribute, please read our Contributing Guide for more information on how to get started.

License

This project is licensed under the MIT License. See the LICENSE file for more details.

Support

If you have any questions or need help, please feel free to open an issue on our GitHub repository.


Thank you for using TaGra! We hope it makes your data preprocessing and graph analysis tasks easier and more efficient.

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

TaGra-0.1.6.tar.gz (11.0 kB view details)

Uploaded Source

Built Distribution

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

TaGra-0.1.6-py3-none-any.whl (14.2 kB view details)

Uploaded Python 3

File details

Details for the file TaGra-0.1.6.tar.gz.

File metadata

  • Download URL: TaGra-0.1.6.tar.gz
  • Upload date:
  • Size: 11.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.10.12

File hashes

Hashes for TaGra-0.1.6.tar.gz
Algorithm Hash digest
SHA256 da308c167065dd47413def0010049b4f282892e4c2ce304237c7569a2eaad7ca
MD5 180536185d3fa43233b290e3b14387cb
BLAKE2b-256 22f07df8c69a05051fbbc824e4263c0a8eb57c636c82f9293675a81e96a30688

See more details on using hashes here.

File details

Details for the file TaGra-0.1.6-py3-none-any.whl.

File metadata

  • Download URL: TaGra-0.1.6-py3-none-any.whl
  • Upload date:
  • Size: 14.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.10.12

File hashes

Hashes for TaGra-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 6d7671de7236b14490bf3117ae2e4bc3400782cbf35baa175113b36c61a4bc82
MD5 238559b0956d79c109649d9f6c841ffb
BLAKE2b-256 addc4bcd5d514cb69b525912c5ba6857aa0f9705d59a2677910e50aa7477031d

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