Skip to main content

EasyGeppy is an easy to use programming interface for Geppy

Project description

EasyGeppy

EasyGeppy is an easy to use programming interface for Geppy from Shuhua Gao [1], and proposed by C. Ferreira in 2001 [2] for Gene Expression Programming (GEP).

EasyGeppy provides a minimized and pre-defined pipeline setup for solving simple and multiple regression problems using Geppy along with Pandas [3] and Numpy [4].

The pipeline is based on the following Shuhua Gao's notebook: Simple mathematical expression inference.

Nonetheless, EasyGeppy allows you to set your custom configuration to its setup by accessing the class EasyGeppy attributes.

Feel free to contribute.

How to install

pip install easy_geppy

How to use


#import
from easy_geppy import EasyGeppy

# Initialize
egp = EasyGeppy(df, #Pandas DataFrame
                 x_columns=['column1','column2','column3'],
                 y_column='column_y')

egp.default_initialization()

# Train
egp.launch_evolution(n_pop=300, n_gen=100)

# Get resulting function for making predictions
best_func = egp.get_best_solution_as_function()

# Make predictions
df['y_predicted'] = best_func(df)

# Get symbolic representation of the resulting function
egp.get_best_solution_simplified()

Example

  1. EasyGeppy-Example

Reference

[1] Shuhua Gao (2020) Geppy [Source code]. https://github.com/ShuhuaGao/geppy. [2] Ferreira, C. (2001). Gene Expression Programming: a New Adaptive Algorithm for Solving Problems. Complex Systems, 13. [3] McKinney, W. & others, 2010. Data structures for statistical computing in python. In Proceedings of the 9th Python in Science Conference. pp. 51–56. [4] Harris, C.R., Millman, K.J., van der Walt, S.J. et al. Array programming with NumPy. Nature 585, 357–362 (2020). DOI: 10.1038/s41586-020-2649-2. (Publisher link).

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

easy_geppy-0.1.2.tar.gz (17.1 kB view details)

Uploaded Source

Built Distribution

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

easy_geppy-0.1.2-py2.py3-none-any.whl (17.6 kB view details)

Uploaded Python 2Python 3

File details

Details for the file easy_geppy-0.1.2.tar.gz.

File metadata

  • Download URL: easy_geppy-0.1.2.tar.gz
  • Upload date:
  • Size: 17.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.2

File hashes

Hashes for easy_geppy-0.1.2.tar.gz
Algorithm Hash digest
SHA256 1e257bccc5b77ef6d007eccef27342fabae0c07c4fb6299c57db14400ef4c19c
MD5 b86cb0fd47a2a21522a6d090b5811309
BLAKE2b-256 e738e24439dbe847667e5384a12048a1156fbe9b9e417de8e876ea5a9562ecaa

See more details on using hashes here.

File details

Details for the file easy_geppy-0.1.2-py2.py3-none-any.whl.

File metadata

  • Download URL: easy_geppy-0.1.2-py2.py3-none-any.whl
  • Upload date:
  • Size: 17.6 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.2

File hashes

Hashes for easy_geppy-0.1.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 edc7e6bb20e3c568bbbbdcb066df5ebd0035632393f480f74acfca25149e78e0
MD5 3865a1c798fba366504682742f3b3beb
BLAKE2b-256 00a935676cc61f8368fdf716ffd316d6d7b53a1cdd424027e0cb2051defaedb2

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