Skip to main content

HeXtractor is a tool designed to automatically convert selected data in tabular format into a PyTorch Geometric heterogeneous graph. As research into graph neural networks (GNNs) expands, the importance of heterogeneous graphs grows. However, data often comes in tabular form, and manually transforming this data into graph format can be tedious and error-prone. HeXtractor aims to streamline this process, providing researchers and practitioners with a more efficient workflow.

Project description

Logo

Overview

HeXtractor is a tool designed to automatically convert selected data in tabular format into a PyTorch Geometric heterogeneous graph. As research into graph neural networks (GNNs) expands, the importance of heterogeneous graphs grows. However, data often comes in tabular form, and manually transforming this data into graph format can be tedious and error-prone. HeXtractor aims to streamline this process, providing researchers and practitioners with a more efficient workflow.

Features

  1. Automatic Conversion: Converts tabular data into heterogeneous graphs suitable for GNNs.
  2. Support for Multiple Formats: Handles various tabular data formats with ease.
  3. Integration with PyTorch Geometric: Directly creates graphs that can be used with PyTorch Geometric.
  4. isualization: Utilizes NetworkX and PyVis for graph visualization.

Why HeXtractor?

Heterogeneous graphs are crucial in many applications of graph neural networks, yet creating them from tabular data manually is often cumbersome. HeXtractor automates this process, allowing researchers to focus on developing and training their models instead of data preprocessing.

Technologies

  1. Python: The primary programming language used for HeXtractor.
  2. pandas: Utilized for data manipulation and handling tabular data.
  3. PyTorch Geometric: Framework for creating and working with graph neural networks.
  4. NetworkX: Used for creating and managing complex graph structures.
  5. PyVis: Enables interactive visualization of graphs.

Installation

HeXtractor can be installed either from PyPI (recommended for most users) or from source code (recommended for developers or if you need the latest features).

From PyPI

To install the latest version from PyPI run:

pip install hextractor

From Source Code

To install HeXtractor from source, you'll first need to clone the repository:

git clone https://github.com/maddataanalyst/hextractor.git
cd hextractor

You can then install it using either conda or any standard Python virtual environment. We use Poetry as our primary dependency manager because it provides robust dependency resolution, reproducible builds, and better package management.

Option 1: Using Conda

  1. If you prefer Conda for environment management:
# Create a new conda environment from the provided file
conda env create -f environment.yml

# Activate the environment
conda activate hextractor

# Install poetry inside the conda environment
pip install poetry

# Install the package with all dependencies
poetry install --with dev --with research

Option 2: Using Standard Python Virtual Environment

  1. Create and activate a virtual environment using your preferred method:
# Using venv (Python 3.3+)
python -m venv hextractor-env
source hextractor-env/bin/activate  # On Windows: hextractor-env\Scripts\activate

# Or using virtualenv
virtualenv hextractor-env
source hextractor-env/bin/activate  # On Windows: hextractor-env\Scripts\activate
  1. Install Poetry and the package:
# Install poetry
pip install poetry

# Install the package with all dependencies
poetry install --with dev --with research

Remember to activate your environment (conda or virtual environment) whenever you want to use HeXtractor.

Documentation

You can find an official, detailed documentation here.

Contributing and help

Contributions are welcome, and they are greatly appreciated! Every little bit helps, and credit will always be given.

You can contribute in many ways:

  1. Reporting bugs;
  2. Fixing bugs;
  3. Implementing features;
  4. Writing documentation;
  5. Submitting feedback.

Detailed contribution and community guidelines can be found in the CONTRIBUTING.rst file.

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

hextractor-1.0.2.tar.gz (19.1 kB view details)

Uploaded Source

Built Distribution

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

hextractor-1.0.2-py3-none-any.whl (22.1 kB view details)

Uploaded Python 3

File details

Details for the file hextractor-1.0.2.tar.gz.

File metadata

  • Download URL: hextractor-1.0.2.tar.gz
  • Upload date:
  • Size: 19.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.11.10 Linux/6.8.0-60-generic

File hashes

Hashes for hextractor-1.0.2.tar.gz
Algorithm Hash digest
SHA256 a4f02cbb692e5cde45aaf33ce7ba58548917dfc84b83199c747ae713b793f20c
MD5 4439a759647185a73169ad709650655b
BLAKE2b-256 3b5eab6bc299e43aa8f317a97528349a5e553bbf3ab803f3044d90ca3f7971d2

See more details on using hashes here.

File details

Details for the file hextractor-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: hextractor-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 22.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.11.10 Linux/6.8.0-60-generic

File hashes

Hashes for hextractor-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 95dc5f0a32adec76e9555fa30925f1b654ba51c25a65d0e1acd50449712be91b
MD5 7697be301aab1bab0911d5969d89da56
BLAKE2b-256 9c0237a6ef5e9358f239067a29bd13d498c475f3c3a77b36750dd5bbc4177527

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