Skip to main content

An elegant and effectice solution to get best set of features from a numerical dataset!

Project description

Feature Select is a simple yet effective solution to select features from a numeric dataset, which yields the best results, given a Machine Learning algorithm.

Features

  • Multiple optimization algorithms to work with.

  • Works with most class based Machine Learning models over a range of libraries.

  • Compatible with all platforms.

Quickstart

Install the latest Feature Select with

pip install featureselect

Usage

from featureselect import DEOptimizer, SAOptimizer, GAOptimizer, PSOptimizer
from sklearn.tree import DecisionTreeClassifier
import pandas as pd

# loading a dataset
dataset = pd.read_csv("dataset.csv", header=None)
dataset[34] = dataset[34].apply(lambda x: 1 if x == "g" else 0)
dataset = dataset.dropna()
X, y = dataset.iloc[:, :-1].to_numpy(), dataset.iloc[:, -1].to_numpy()

# best_accuracy, index_of_best_features = GAOptimizer((X, y), DecisionTreeClassifier, epochs = 10, threshold=0.6, verbose=1, max_depth=3)
# best_accuracy, index_of_best_features = SAOptimizer((X, y), DecisionTreeClassifier, epochs = 10, threshold=0.6, verbose=True, max_depth=3)
# best_accuracy, index_of_best_features = PSOptimizer((X, y), DecisionTreeClassifier, epochs = 10, verbose=1, max_depth=3)


best_accuracy, index_of_best_features = DEOptimizer((X, y), DecisionTreeClassifier, epochs = 10, threshold=0.6, verbose=1, max_depth=3)

#############
#   Output
#############
Initial Accuracy: 0.887.
----------------------------------
*  Epoch:  1 | Accuracy: 0.958.
----------------------------------
*  Epoch:  2 | Accuracy: 0.958.
----------------------------------
*  Epoch:  3 | Accuracy: 0.958.
----------------------------------
*  Epoch:  4 | Accuracy: 0.958.
----------------------------------
*  Epoch:  5 | Accuracy: 0.972.
----------------------------------
*  Epoch:  6 | Accuracy: 0.972.
----------------------------------
*  Epoch:  7 | Accuracy: 0.972.
----------------------------------
*  Epoch:  8 | Accuracy: 0.972.
----------------------------------
*  Epoch:  9 | Accuracy: 0.986.
----------------------------------
*  Epoch: 10 | Accuracy: 0.986.
----------------------------------
(0.9859154929577465, array([ 2,  4,  5,  6,  9, 11, 12, 13, 14, 17, 19, 20, 21, 24, 26, 29, 32]))

Note

The project is still in developement phase and will be expanded and made better over time. Any contribution to it is welcomed. Stable release would be made available soon.

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

featureselect-0.0.5.tar.gz (8.2 kB view details)

Uploaded Source

Built Distribution

featureselect-0.0.5-py3-none-any.whl (9.7 kB view details)

Uploaded Python 3

File details

Details for the file featureselect-0.0.5.tar.gz.

File metadata

  • Download URL: featureselect-0.0.5.tar.gz
  • Upload date:
  • Size: 8.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.9.0

File hashes

Hashes for featureselect-0.0.5.tar.gz
Algorithm Hash digest
SHA256 bc8f2034235fdcfef948aa51457be88df27f1e76cb48efb69b1e56105acb74d5
MD5 3bff1517beccc0524f909d9635bc6c29
BLAKE2b-256 2de47394c916d50b63e4ea04c0cbed1a88a50a7b10fbe89bd3e01343b0a52f2f

See more details on using hashes here.

File details

Details for the file featureselect-0.0.5-py3-none-any.whl.

File metadata

  • Download URL: featureselect-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 9.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.9.0

File hashes

Hashes for featureselect-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 4fc28c649d0ead586024d2abd5998a981809004ec03e6032e5973ab35332f5a3
MD5 29c100dafc1c6a2be77197fc7f7e0c3d
BLAKE2b-256 b32abce27e088e5648d03d8be3f6e4c74b97de209fe2b74835d37baa57199a81

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page