Skip to main content

A Python package implementing TOPSIS technique by Ishav_101903773.

Project description

TOPSIS-Python

Submitted By: Ishav Gupta


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:

The Topsis-Ishav-101903773 has a function topsis() that takes 4 parameters, i.e., inputFile, weights, impacts, and outputFile, and returns the resulting dataframe having Topsis Score and Rank as additional columns.

Where,

  • inputFile: Can be either csv file or pandas dataframe. Input file must contain three or more columns, where, First column is the object/variable name like M1, M2, M3, M4, etc. Also, from 2nd to last columns must contain numeric values only.
  • weights: In the form of string having numerical values separated by commas.
  • impacts: In the form of string having + or - values separated by commas. Here, + refers to positive impact, whereas, - refers to negative impact.
  • outputFile (optional): csv file in which output of the function will be stored.

For Example,

Method 1: By passing required csv file as output

>>> import Topsis_Ishav_101903773 as ans
>>> inputFile = "input.csv"
>>> weights = "1,1,1,2,1"
>>> impacts = "+,+,-,+,+"
>>> result_df = ans.topsis(inputFile, weights, impacts,"Any_file_name_here.csv")

Method 2: By leaving the last argument blank

>>> import Topsis_Ishav_101903773 as ans
>>> inputFile = "input.csv"
>>> weights = "1,1,1,2,1"
>>> impacts = "+,+,-,+,+"
>>> result_df = ans.topsis(inputFile, weights, impacts)  #the output file will be named as 101903773.csv

Sample Input

Dataset

Fund Name P1 P2 P3 P4 P5
M1 0.65 0.42 3.3 46.3 12.67
M2 0.81 0.66 4.9 51.4 14.44
M3 0.87 0.76 6 65.4 18.26
M4 0.87 0.76 4.2 40.7 11.63
M5 0.75 0.56 6.8 57.5 16.4
M6 0.64 0.41 5.3 44.7 12.76
M7 0.77 0.59 4.7 49.8 13.97
M8 0.7 0.49 3.1 43.9 12.05

Weights

weights = "1,1,1,2,1"

Impacts

impacts = "+,+,-,+,+"


Sample Output

Fund Name P1 P2 P3 P4 P5 Topsis Score Rank
M1 0.65 0.42 3.3 46.3 12.67 0.41202513 7
M2 0.81 0.66 4.9 51.4 14.44 0.510060544 2
M3 0.87 0.76 6 65.4 18.26 0.685105262 1
M4 0.87 0.76 4.2 40.7 11.63 0.433129944 5
M5 0.75 0.56 6.8 57.5 16.4 0.469643489 3
M6 0.64 0.41 5.3 44.7 12.76 0.225789842 8
M7 0.77 0.59 4.7 49.8 13.97 0.451566364 4
M8 0.7 0.49 3.1 43.9 12.05 0.418005937 6

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_Ishav_101903773-1.0.0.tar.gz (4.0 kB view details)

Uploaded Source

File details

Details for the file Topsis_Ishav_101903773-1.0.0.tar.gz.

File metadata

  • Download URL: Topsis_Ishav_101903773-1.0.0.tar.gz
  • Upload date:
  • Size: 4.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.26.0 requests-toolbelt/0.9.1 urllib3/1.26.7 tqdm/4.62.3 importlib-metadata/4.8.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.7

File hashes

Hashes for Topsis_Ishav_101903773-1.0.0.tar.gz
Algorithm Hash digest
SHA256 470ae8d7a4a61c7d9aafdb2ecc65ac4069a5acb28dc572b24feb86d2dd385bf6
MD5 5833e5d20f4d4358848b9fe9b2ecd565
BLAKE2b-256 5f1d02b401de20e28155ae681e50a40bf6bbbd583dbfe54fa8fbab6adc5cf410

See more details on using hashes here.

Supported by

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