Metadata-Version: 2.4
Name: feseco
Version: 0.4.0
Summary: A consolidated feature selection decision support system (DSS) that employs variance thresholding, missing values ratios, and pairwise correlations.
Author-email: Jasper Gomez <gomezjasper123@gmail.com>
License: MIT
Project-URL: Homepage, https://github.com/jasper-gomez/feature-selection-companion/tree/refactor/package
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Intended Audience :: Science/Research
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: joblib>=1.5
Requires-Dist: numpy>=2.5
Requires-Dist: pandas>=3.0
Requires-Dist: scikit_learn>=1.9
Dynamic: license-file

### Feature Selection Companion 

A consolidated feature selection decision support system (DSS) that employs variance thresholding, missing values ratios, and pairwise correlations.

###### Link to [Web-Based Platform](https://huggingface.co/spaces/sdbrgo/feature-selection-companion)

---

### How to Use

#### Installation

In your terminal, simply type:

```python
pip install feseco
```

#### Importing the Package

The class that you will need to import is `CompanionFS` which stands for "Companion - Feature Selector".

```python
from feseco import CompanionFS
```

#### Example Usage

For example, you have a dataset and you want to identify which features to drop. You can do this simply by calling the `filter_features()` method of the CompanionFS object.

```python
from feseco import CompanionFS

file_path = "your_dataset.csv"

# You pass the path to your dataset. Optionally, you can pass a feature of the dataset as an argument. This way, the class analyzes the features relative to your target column.
cfs = CompanionFS(file_path, target_col="my_feature")

features_to_drop = cfs.filter_features()
```

Optionally, you can change the thresholds for each of the feature selection method. See the example below:

```python
cfs = CompanionFS(
    file_path, 
    var_threshold=0.1,      # variance threshold; default is 0.1
    mvr_threshold=0.5,      # missing value ratio threshold; default is 0.5
    corr_threshold=0.75,    # correlation analysis threshold; default is 0.75
    target_col="my_feature"
)
```

---

#### License

This project is licensed under the **MIT License**.

###### View the [`LICENSE`](https://github.com/jasper-gomez/feature-selection-companion/blob/refactor/package/LICENSE)

---

#### Attribution Requirements

When building upon or reusing this work, please include:

- **Author name**: Jasper Gomez  
- **Repository name**: Feature Selection Companion  
- **Repository link**: https://github.com/jasper-gomez/feature-selection-companion/tree/refactor/package
- **Citation using the [`CITATION.cff`](https://github.com/jasper-gomez/feature-selection-companion/raw/refactor/package/CITATION.cff) metadata**  
- A note in your documentation, publication, or code comments acknowledging the original work

Example acknowledgment:

> “This work builds on *Feature Selection Companion* by Jasper Gomez (MIT License).”

Following these guidelines helps support academic and ethical reuse.
