Skip to main content

A Python pip package to apply topsis approach to rank the entries in a dataset

Project description

TOPSIS-Python

Project 1 : UCS633 DATA ANALYSIS AND VISUALIZATION

Submitted By: Yash Saxena 101703627


pypi: https://pypi.org/project/topsis-yash-saxena/
git: https://github.com/yashsaxena972/topsis


What is TOPSIS ?

Technique for Order Preference by Similarity to Ideal Solution (TOPSIS) originated in the 1980s as a multi-criteria decision making method. TOPSIS chooses the alternative of shortest Euclidean distance from the ideal solution, and greatest distance from the negative-ideal solution. More details at wikipedia.


How to use this package?

TOPSIS-YASH-SAXENA can be run as in the following example:

In Command Prompt

>> topsis data.csv "1,1,1,1" "+,+,-,+"

In Python IDLE:

>>> import pandas as pd
>>> from topsis_python.topsis import topsis
>>> dataset = pd.read_csv('data.csv').values
>>> d = dataset[:,1:]
>>> w = [1,1,1,1]
>>> im = ["+" , "+" , "-" , "+" ]
>>> topsis(d,w,im)

Sample dataset

The decision matrix (a) should be constructed with each row representing a Model alternative, and each column representing a criterion like Accuracy, R2, Root Mean Squared Error, Correlation, and many more.

Model Correlation R2 RMSE Accuracy
M1 0.79 0.62 1.25 60.89
M2 0.66 0.44 2.89 63.07
M3 0.56 0.31 1.57 62.87
M4 0.82 0.67 2.68 70.19
M5 0.75 0.56 1.3 80.39

Weights (w) is not already normalised will be normalised later in the code.

Information of benefit positive(+) or negative(-) impact criteria should be provided in I.


Output

Model   Score    Rank
-----  --------  ----
  1    0.77221     2
  2    0.225599    5
  3    0.438897    4
  4    0.523878    3
  5    0.811389    1

The rankings are displayed in the form of a table using a package 'tabulate', with the 1st rank offering us the best decision, and last rank offering the worst decision making, according to TOPSIS method.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

topsis-yash-saxena-1.0.4.tar.gz (4.2 kB view details)

Uploaded Source

Built Distribution

topsis_yash_saxena-1.0.4-py3-none-any.whl (6.0 kB view details)

Uploaded Python 3

File details

Details for the file topsis-yash-saxena-1.0.4.tar.gz.

File metadata

  • Download URL: topsis-yash-saxena-1.0.4.tar.gz
  • Upload date:
  • Size: 4.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.7.3

File hashes

Hashes for topsis-yash-saxena-1.0.4.tar.gz
Algorithm Hash digest
SHA256 2106bbadfc0b3e095617cc7a819bb513dbf4fcb6ac0f8d190fefe9df12cd73ed
MD5 176d1864a3d9c94d38ff92ef013a7be4
BLAKE2b-256 3bba93ea971bcb55fc53dafb859193e75c8bc65e1048c4126c6a324f8e1dfc65

See more details on using hashes here.

File details

Details for the file topsis_yash_saxena-1.0.4-py3-none-any.whl.

File metadata

  • Download URL: topsis_yash_saxena-1.0.4-py3-none-any.whl
  • Upload date:
  • Size: 6.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.7.3

File hashes

Hashes for topsis_yash_saxena-1.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 fc905715b5992590ad33afec8849391793c66bd413696813322147c13fe1cea3
MD5 b78d2c4fd630b534afe7ddeb8667d9bc
BLAKE2b-256 18f2b766e04d889c05f2ed73858afb8816239ec4e7af4f9bc71239e2b44651ee

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page