# topsis_102017134

_for: **Project-1 (UCS654)**_
_submitted by: **Soumya Srivastava**_
_Roll no: **102017134**_
_Group: **3CS6**_

topsis-3283 is a Python library for dealing with Multiple Criteria Decision Making(MCDM) problems by using Technique for Order of Preference by Similarity to Ideal Solution(TOPSIS).

## Installation

Use the package manager [pip](https://pip.pypa.io/en/stable/) to install topsis_102017134.

```bash
pip install topsis_102017134
```

## Usage

Enter csv filename followed by _.csv_ extentsion, then enter the _weights_ vector with vector values separated by commas, followed by the _impacts_ vector with comma separated signs _(+,-)_, and lastly the _outputFileName_.

```bash
topsis sample.csv "1,1,1,1" "+,-,+,+" "outputFile.csv"
```

## Example

#### sample.csv

A csv file showing data for different mobile handsets having varying features.

| Model | Storage space(in gb) | Camera(in MP) | Price(in $) | Looks(out of 5) |
| :---: | :------------------: | :-----------: | :---------: | :-------------: |
|  M1   |          16          |      12       |     250     |        5        |
|  M2   |          16          |       8       |     200     |        3        |
|  M3   |          32          |      16       |     300     |        4        |
|  M4   |          32          |       8       |     275     |        4        |
|  M5   |          16          |      16       |     225     |        2        |

weights vector = [ 0.25 , 0.25 , 0.25 , 0.25 ]

impacts vector = [ + , + , - , + ]

### input:

```python
topsis sample.csv "0.25,0.25,0.25,0.25" "+,+,-,+"
```

### output:

```
    P-Score  Rank
1  0.534277     3
2  0.308368     5
3  0.691632     1
4  0.534737     2
5  0.401046     4

```

## License

[MIT](https://choosealicense.com/licenses/mit/)

## [Github Repository](https://github.com/sri-soumya/topsis)
