TOPSIS ranking and interpretation using WMSD-space
This repository hosts the code for MSDTransformer - a scikit-learn compatible python library, that lets you create TOPSIS rankings of alternatives, visualize rankings in WMSD space, and get suggestions for improvement actions.
Requirements
MSDTransformer uses PySCIPOpt to determine exact WMSD boundaries quickly. If you use conda, you should be fine performing the follwoing command (easier option):
conda install --channel conda-forge pyscipopt
If you use PyPI, then you will need a working installation of the SCIP Optimization Suite (harder option, but might run faster). Please, make sure that your SCIP installation works, before installing MSDTransformer. For more details on how to install SCIP, please refer to the PySCIPOpt documentation.
After installing PySCIPOpt (or if you already have SCIP installed), you can install the other dependencies by running:
pip install -r requirements.txt
Installation
Once you have all the dependencies, you can install MSDTransformer from source. To do so, clone the repository and run the following command in the root directory of the repository:
pip install .
Quickstart
import pandas as pd
from MSDTransformer import MSDTransformer
df = pd.read_csv("../data/students.csv", sep=';', index_col= 0)
students_transformer = MSDTransformer("R") # Relative distance
students_transformer.fit(df, expert_range=[[0,100],[1,6],[1,6]])
students_transformer.transform(df)
students_transformer.show_ranking()
students_transformer.plot()
Citation
If you use this project in your research, please consider citing the following papers:
Release files for wmsd 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| wmsd-1.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Release files / wmsd-1.0.0-py3-none-any.whl
| Download URL | wmsd-1.0.0-py3-none-any.whl |
|---|---|
| Size | 16.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
81579808e32eba923b85499d16a4e049f64775b6b8cd703de882c17f96e65884
|
|
BLAKE2b-256 checksum How to use checksums |
6a5dc92cb562c7671d1b9ae72beb8289bd9640870eb860b9ca92c4b5852012ca
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.9.18
|