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.7.tar.gz (11.1 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.7-py3-none-any.whl (14.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: TaGra-0.1.7.tar.gz
  • Upload date:
  • Size: 11.1 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.7.tar.gz
Algorithm Hash digest
SHA256 1f7e51c52a93011b492c20fb2ec818f5c1b9fbd3b118038a2245112ff8b511a9
MD5 6cffdfdc9d7988b627ee126aff59ad74
BLAKE2b-256 68b0efa2e4374bd25819df9aadec71eb13d689b21c4d2ab86ddbd98e2dee8913

See more details on using hashes here.

File details

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

File metadata

  • Download URL: TaGra-0.1.7-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.7-py3-none-any.whl
Algorithm Hash digest
SHA256 9400632fc76a12269f3409f5034be4b9c47ceeffaf7f7875e1b291e6b3757395
MD5 f9cc7f0bcb22d36dbe8d4ec0944be862
BLAKE2b-256 13cc35ec906410eb684db3e74d16ff62ab4d8ad3d480a6b31b7cdad59599689c

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