Topsis-Keshav-102017064


NameTopsis-Keshav-102017064 JSON
Version 0.0.1 PyPI version JSON
download
home_pagehttps://github.com/keshavgarg23/Topsis-Keshav-102017064
SummaryThis package performs the topsis(multiple criterion decision making) on a pandas dataframe and return the rank and topsis score.
upload_time2023-01-21 09:57:55
maintainer
docs_urlNone
authorKeshav Garg
requires_python
licenseMIT
keywords topsis mcdm decision making
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Topsis
This is a python library which implements topsis.Topsis is a technique which is used for Multiple Criteria Decision Making(MCDM). It takes weights and impacts of criteria does the decision making by calculating the similarity to ideal solution.


## Installation
Use the package manager [pip](https://pip.pypa.io/en/stable/) to install the package
```
pip install Topsis_Keshav_102017064
```


## Import

```
from Topsis_Keshav_102017064 import topsis
```

## Usage
topsis module has a function names get_score which takes 3 arguements as:
1. dataframe - It is a pandas dataframe which has atleast 3 columns(including the first column with names). It should only have numerical values. Any non-numerical value should be encoded before passing it to function.
2. weights - It is a string of comma(,) separated numbers which tell the weight of each criteria.
3. impacts - It is a string of comma(,) separated + and - sign showing the impact of criteria on decision making.

The function return the original pandas dataframe with 2 more columns added, which are Topsis Score and Rank.
```
topsis.get_score(dataframe,weights,impacts)
```


## Example

test.csv (Input):

|mobile|ram|memo|display|battery|price|
|------|---|----|-------|-------|-----|
|a|4|128|6.5|3500|15000|
|b|6|64|6.4|3800|16000|
|c|6|128|6.8|4200|19000|
|d|8|256|7|5000|25000|
|e|3|64|6.2|4000|14000|


```
from Topsis_Keshav_102017064 import topsis
import pandas as pd
df = pd.read_csv('./test.csv')
weights = "+,+,+,+,-"
impacts = "1,1,1,1,1"
print(topsis.get_score(df,weights,impacts))
```

Output:
|  |mobile|  ram|  memo|  display|  battery|  price|  Topsis Score|  Rank|
|--|------|----|--------|--------|-------|-------|----------|-------|
|0      |a    |4   |128    |6.5     |3500|  15000|     0.379477|     3|
|1      |b    |6   |64     |6.4     |3800|  16000|      0.341963|     4|
|2      |c    |6   |128    |6.8     |4200|  19000|      0.439078|     2|
|3      |d    |8   |256    |7.0     |5000|  25000|      0.729791|    1|
|4      |e    |3   |64     |6.2     |4000|  14000|      0.276912|     5|


            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/keshavgarg23/Topsis-Keshav-102017064",
    "name": "Topsis-Keshav-102017064",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "TOPSIS,MCDM,DECISION,MAKING",
    "author": "Keshav Garg",
    "author_email": "gkeshav2309@gmail.com",
    "download_url": "https://github.com/keshavgarg23/Topsis-Keshav-102017064/archive/refs/tags/v.01.tar.gz",
    "platform": null,
    "description": "# Topsis\nThis is a python library which implements topsis.Topsis is a technique which is used for Multiple Criteria Decision Making(MCDM). It takes weights and impacts of criteria does the decision making by calculating the similarity to ideal solution.\n\n\n## Installation\nUse the package manager [pip](https://pip.pypa.io/en/stable/) to install the package\n```\npip install Topsis_Keshav_102017064\n```\n\n\n## Import\n\n```\nfrom Topsis_Keshav_102017064 import topsis\n```\n\n## Usage\ntopsis module has a function names get_score which takes 3 arguements as:\n1. dataframe - It is a pandas dataframe which has atleast 3 columns(including the first column with names). It should only have numerical values. Any non-numerical value should be encoded before passing it to function.\n2. weights - It is a string of comma(,) separated numbers which tell the weight of each criteria.\n3. impacts - It is a string of comma(,) separated + and - sign showing the impact of criteria on decision making.\n\nThe function return the original pandas dataframe with 2 more columns added, which are Topsis Score and Rank.\n```\ntopsis.get_score(dataframe,weights,impacts)\n```\n\n\n## Example\n\ntest.csv (Input):\n\n|mobile|ram|memo|display|battery|price|\n|------|---|----|-------|-------|-----|\n|a|4|128|6.5|3500|15000|\n|b|6|64|6.4|3800|16000|\n|c|6|128|6.8|4200|19000|\n|d|8|256|7|5000|25000|\n|e|3|64|6.2|4000|14000|\n\n\n```\nfrom Topsis_Keshav_102017064 import topsis\nimport pandas as pd\ndf = pd.read_csv('./test.csv')\nweights = \"+,+,+,+,-\"\nimpacts = \"1,1,1,1,1\"\nprint(topsis.get_score(df,weights,impacts))\n```\n\nOutput:\n|  |mobile|  ram|  memo|  display|  battery|  price|  Topsis Score|  Rank|\n|--|------|----|--------|--------|-------|-------|----------|-------|\n|0      |a    |4   |128    |6.5     |3500|  15000|     0.379477|     3|\n|1      |b    |6   |64     |6.4     |3800|  16000|      0.341963|     4|\n|2      |c    |6   |128    |6.8     |4200|  19000|      0.439078|     2|\n|3      |d    |8   |256    |7.0     |5000|  25000|      0.729791|    1|\n|4      |e    |3   |64     |6.2     |4000|  14000|      0.276912|     5|\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "This package performs the topsis(multiple criterion decision making) on a pandas dataframe and return the rank and topsis score.",
    "version": "0.0.1",
    "split_keywords": [
        "topsis",
        "mcdm",
        "decision",
        "making"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "428b00dbf23cf428d79d3d76c7ccd78ce324ba33085d351b2888267a8e9f0fcd",
                "md5": "37b5a880a1b7830865d2f1658a3270c5",
                "sha256": "f25ce55c125ebc55db7cb9710b8927548c5b763e5b9ab2c3e4b03e4b18e2f166"
            },
            "downloads": -1,
            "filename": "Topsis_Keshav_102017064-0.0.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "37b5a880a1b7830865d2f1658a3270c5",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 4523,
            "upload_time": "2023-01-21T09:57:55",
            "upload_time_iso_8601": "2023-01-21T09:57:55.118080Z",
            "url": "https://files.pythonhosted.org/packages/42/8b/00dbf23cf428d79d3d76c7ccd78ce324ba33085d351b2888267a8e9f0fcd/Topsis_Keshav_102017064-0.0.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-01-21 09:57:55",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "keshavgarg23",
    "github_project": "Topsis-Keshav-102017064",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "topsis-keshav-102017064"
}
        
Elapsed time: 0.03090s