RENT

RENT: A Python Package for Repeated Elastic Net Feature Selection - Published in JOSS (2021)

https://github.com/nmbu-data-science/rent

Science Score: 93.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 9 DOI reference(s) in README and JOSS metadata
  • Academic publication links
    Links to: ieee.org, joss.theoj.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
    Published in Journal of Open Source Software

Keywords

binary-classification classification elastic-net ensemble ensemble-model feature-selection regression

Scientific Fields

Mathematics Computer Science - 84% confidence
Last synced: 4 months ago · JSON representation

Repository

Feature selection method based on repeated elastic net.

Basic Info
  • Host: GitHub
  • Owner: NMBU-Data-Science
  • License: bsd-2-clause
  • Language: Python
  • Default Branch: master
  • Homepage:
  • Size: 25 MB
Statistics
  • Stars: 16
  • Watchers: 5
  • Forks: 6
  • Open Issues: 3
  • Releases: 1
Topics
binary-classification classification elastic-net ensemble ensemble-model feature-selection regression
Created over 5 years ago · Last pushed almost 4 years ago
Metadata Files
Readme Contributing License Code of conduct

README.md

RENT

RENT (Repeated Elastic Net Technique) is a feature selection method for binary classification and regression problems. At its core RENT trains an ensemble of generalized linear models using regularized elastic net to select features. Each model in the ensemble is trained using a randomly, iid sampled subset of rows of the full training data. A single data point can appear at most once in each subset, but may appear in multiple subsets. From these unique models one can acquire weight distributions for each feature that contain rich information on the stability of feature selection and from which several adjustable classification criteria may be defined.

More details are in the original paper published in IEEE Access: RENT - Repeated Elastic Net Technique for Feature Selection

Example

Below are links to Jupyter-notebooks that illustrate how to use RENT for

Requirements

Make sure that Python 3.5 or higher is installed. A convenient way to install Python and many useful packages for scientific computing is to use the Anaconda Distribution

  • numpy >= 1.11.3
  • pandas >= 1.2.3
  • scikit-learn >= 0.22
  • scipy >= 1.5.0
  • hoggorm >= 0.13.3
  • hoggormplot >= 0.13.2
  • matplotlib >= 3.2.2
  • seaborn >= 0.10

Installation

To install the package with the pip package manager, run the following command:
python3 -m pip install git+https://github.com/NMBU-Data-Science/RENT.git

Documentation

Documentation is available at ReadTheDocs. It provides detailed explanation of methods and their inputs.

Citing the RENT package

If you use RENT in a report or scientific publication, we would appreciate citations to the following paper:

DOI

Jenul et al., (2021). RENT: A Python Package for Repeated Elastic Net Feature Selection. Journal of Open Source Software, 6(63), 3323, https://doi.org/10.21105/joss.03323

Bibtex entry:

@article{RENT,
doi = {10.21105/joss.03323},
url = {https://doi.org/10.21105/joss.03323},
year = {2021},
publisher = {The Open Journal},
volume = {6},
number = {63},
pages = {3323},
author = {Anna Jenul and Stefan Schrunner and Bao Ngoc Huynh and Oliver Tomic},
title = {RENT: A Python Package for Repeated Elastic Net Feature Selection},
journal = {Journal of Open Source Software}
}

Owner

  • Name: NMBU-Data-Science
  • Login: NMBU-Data-Science
  • Kind: organization

Data science related repositories developed at the Faculty of Science and Technology, Norwegian University of Life Sciences

JOSS Publication

RENT: A Python Package for Repeated Elastic Net Feature Selection
Published
July 28, 2021
Volume 6, Issue 63, Page 3323
Authors
Anna Jenul ORCID
Department of Data Science, Norwegian University of Life Sciences
Stefan Schrunner ORCID
Department of Data Science, Norwegian University of Life Sciences
Bao Ngoc Huynh ORCID
Department of Physics, Norwegian University of Life Sciences
Oliver Tomic ORCID
Department of Data Science, Norwegian University of Life Sciences
Editor
Mikkel Meyer Andersen ORCID
Tags
feature selection

GitHub Events

Total
  • Watch event: 3
  • Fork event: 1
Last Year
  • Watch event: 3
  • Fork event: 1

Committers

Last synced: 5 months ago

All Time
  • Total Commits: 256
  • Total Committers: 4
  • Avg Commits per committer: 64.0
  • Development Distribution Score (DDS): 0.359
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
annajenul 6****l 164
Oliver Tomic o****c@z****m 76
muaf m****f@n****o 11
Ngoc Huynh h****2@g****m 5
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 7
  • Total pull requests: 13
  • Average time to close issues: 10 days
  • Average time to close pull requests: about 1 hour
  • Total issue authors: 5
  • Total pull request authors: 4
  • Average comments per issue: 1.86
  • Average comments per pull request: 0.31
  • Merged pull requests: 12
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • maximtrp (3)
  • ditsiaou (1)
  • alabamagan (1)
  • AndreiRoibu (1)
  • rajeshkalakoti (1)
Pull Request Authors
  • olivertomic (8)
  • Uzaaft (3)
  • huynhngoc (1)
  • annajenul (1)
Top Labels
Issue Labels
Pull Request Labels

Dependencies

requirements.txt pypi
  • coverage *
  • hoggorm >=0.13.3
  • hoggormplot >=0.13.2
  • matplotlib >=3.2.2
  • numpy >=1.11.3
  • pandas >=1.2.3
  • pip *
  • pytest *
  • pytest-cov *
  • pytest-randomly *
  • scikit-learn >=0.22
  • scipy >=1.5.0
  • seaborn >=0.10
  • sphinx *
  • sphinxbootstrap4theme *
  • tox *
  • twine *
  • wheel *