{"id":15064001,"url":"https://github.com/daniel-furman/recfeatureselect","last_synced_at":"2026-01-03T00:14:14.407Z","repository":{"id":57461866,"uuid":"347785753","full_name":"daniel-furman/RecFeatureSelect","owner":"daniel-furman","description":"Feature selection functions (1) using the multi-collinearity matrix and recursively proceeding to a spearman threshold and (2) using Forward Stepwise Selection running on an ensemble sklearner (with options for HPO). ","archived":false,"fork":false,"pushed_at":"2021-08-15T19:14:24.000Z","size":1932,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-24T19:40:09.525Z","etag":null,"topics":["correlation-threshold","machine-learning","modeling","multicollinearity","recursion","recursive-algorithm","scikit-learn","spearman-rho"],"latest_commit_sha":null,"homepage":"https://libraries.io/pypi/RecFeatureSelect/0.1","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/daniel-furman.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-03-15T00:05:11.000Z","updated_at":"2021-08-27T07:15:26.000Z","dependencies_parsed_at":"2022-08-28T00:12:37.975Z","dependency_job_id":null,"html_url":"https://github.com/daniel-furman/RecFeatureSelect","commit_stats":null,"previous_names":["daniel-furman/recursivefeatureselection"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daniel-furman%2FRecFeatureSelect","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daniel-furman%2FRecFeatureSelect/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daniel-furman%2FRecFeatureSelect/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daniel-furman%2FRecFeatureSelect/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/daniel-furman","download_url":"https://codeload.github.com/daniel-furman/RecFeatureSelect/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243786063,"owners_count":20347576,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["correlation-threshold","machine-learning","modeling","multicollinearity","recursion","recursive-algorithm","scikit-learn","spearman-rho"],"created_at":"2024-09-25T00:10:00.183Z","updated_at":"2026-01-03T00:14:14.374Z","avatar_url":"https://github.com/daniel-furman.png","language":"Python","readme":"[![Build Status](https://travis-ci.com/daniel-furman/RecFeatureSelect.svg?branch=main)](https://travis-ci.com/daniel-furman/RecFeatureSelect)\n\n## RecFeatureSelect\n\n---\n\nFeature selection via recursive removal of the most correlated pair. The feature importance scores are used as the rankings, deciding which variable to drop at each call.\n\nFinal covariance matrix with Method 2 for r \u003c 0.85\n![](test/data/heatmap.png)\n\n---\n\n`pip import RecFeatureSelect` \u003cbr\u003e `from RecFeatureSelect import feature_selector`\n\n* The main function can be found from the source folder, RecFeatureSelect.\n* The input data consists of the original covariance matrix, the feature importance scores, a spearman correlation threshold, and the raw data. \n* After the run the function will save the final covariance matrix to file as \"cov.csv\". All correlations will be less than the input threshold.  \n\n---\n\n* [RecFeatureSelect](https://github.com/daniel-furman/RecFeatureSelect/tree/main/src/RecFeatureSelect) - the library code itself\n* [docs](https://github.com/daniel-furman/RecFeatureSelect/tree/main/docs) - instructions for import and basic use\n* [LICENSE](https://github.com/daniel-furman/RecFeatureSelect/blob/main/LICENSE) - the MIT license, which applies to this package\n* README.md - the README file, which you are now reading\n* [requirements.txt](https://github.com/daniel-furman/RecFeatureSelect/blob/main/requirements.txt) - prerequisites to install this package, used by pip\n* [setup.py](https://github.com/daniel-furman/RecFeatureSelect/blob/main/setup.py) - installer script\n* [tests](https://github.com/daniel-furman/RecFeatureSelect/tree/main/test)/ - unit tests\n\n\n### Longer Description:\n\n---\n\nThis function selects de-correlated features for a modeling experiment by filtering the most similar pair at each call. The algorithm reaches the\nstopping case when all pairs of features are below the Spearman's statistic `threshold`. The feature importances are used as the ranking.\n\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdaniel-furman%2Frecfeatureselect","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdaniel-furman%2Frecfeatureselect","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdaniel-furman%2Frecfeatureselect/lists"}