Topsis-KhushiMehta-102303769 1.0.0__tar.gz → 1.0.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- topsis_khushimehta_102303769-1.0.1/PKG-INFO +131 -0
- topsis_khushimehta_102303769-1.0.1/Topsis_KhushiMehta_102303769.egg-info/PKG-INFO +131 -0
- topsis_khushimehta_102303769-1.0.1/setup.py +25 -0
- topsis_khushimehta_102303769-1.0.0/PKG-INFO +0 -11
- topsis_khushimehta_102303769-1.0.0/Topsis_KhushiMehta_102303769.egg-info/PKG-INFO +0 -11
- topsis_khushimehta_102303769-1.0.0/setup.py +0 -15
- {topsis_khushimehta_102303769-1.0.0 → topsis_khushimehta_102303769-1.0.1}/README.md +0 -0
- {topsis_khushimehta_102303769-1.0.0 → topsis_khushimehta_102303769-1.0.1}/Topsis_KhushiMehta_102303769.egg-info/SOURCES.txt +0 -0
- {topsis_khushimehta_102303769-1.0.0 → topsis_khushimehta_102303769-1.0.1}/Topsis_KhushiMehta_102303769.egg-info/dependency_links.txt +0 -0
- {topsis_khushimehta_102303769-1.0.0 → topsis_khushimehta_102303769-1.0.1}/Topsis_KhushiMehta_102303769.egg-info/entry_points.txt +0 -0
- {topsis_khushimehta_102303769-1.0.0 → topsis_khushimehta_102303769-1.0.1}/Topsis_KhushiMehta_102303769.egg-info/requires.txt +0 -0
- {topsis_khushimehta_102303769-1.0.0 → topsis_khushimehta_102303769-1.0.1}/Topsis_KhushiMehta_102303769.egg-info/top_level.txt +0 -0
- {topsis_khushimehta_102303769-1.0.0 → topsis_khushimehta_102303769-1.0.1}/pyproject.toml +0 -0
- {topsis_khushimehta_102303769-1.0.0 → topsis_khushimehta_102303769-1.0.1}/setup.cfg +0 -0
- {topsis_khushimehta_102303769-1.0.0 → topsis_khushimehta_102303769-1.0.1}/topsis_khushi/__init__.py +0 -0
- {topsis_khushimehta_102303769-1.0.0 → topsis_khushimehta_102303769-1.0.1}/topsis_khushi/topsis.py +0 -0
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: Topsis-KhushiMehta-102303769
|
|
3
|
+
Version: 1.0.1
|
|
4
|
+
Summary: Command-line implementation of TOPSIS decision making method
|
|
5
|
+
Author: Khushi Mehta
|
|
6
|
+
Description-Content-Type: text/markdown
|
|
7
|
+
Requires-Dist: pandas
|
|
8
|
+
Requires-Dist: numpy
|
|
9
|
+
Requires-Dist: openpyxl
|
|
10
|
+
Dynamic: author
|
|
11
|
+
Dynamic: description
|
|
12
|
+
Dynamic: description-content-type
|
|
13
|
+
Dynamic: requires-dist
|
|
14
|
+
Dynamic: summary
|
|
15
|
+
|
|
16
|
+
TOPSIS Python Package
|
|
17
|
+
|
|
18
|
+
This project is a Python command-line tool that implements the TOPSIS
|
|
19
|
+
(Technique for Order Preference by Similarity to Ideal Solution) method.
|
|
20
|
+
|
|
21
|
+
TOPSIS is a multi-criteria decision making technique used to rank different
|
|
22
|
+
alternatives based on their distance from an ideal best solution and an
|
|
23
|
+
ideal worst solution.
|
|
24
|
+
|
|
25
|
+
This package allows users to apply the TOPSIS method easily using a single
|
|
26
|
+
command from the terminal.
|
|
27
|
+
|
|
28
|
+
-----------------------------------------------------------------------
|
|
29
|
+
|
|
30
|
+
Installation
|
|
31
|
+
|
|
32
|
+
The package can be installed using pip.
|
|
33
|
+
|
|
34
|
+
pip install Topsis-KhushiMehta-102303769
|
|
35
|
+
|
|
36
|
+
-----------------------------------------------------------------------
|
|
37
|
+
|
|
38
|
+
Usage
|
|
39
|
+
|
|
40
|
+
After installing the package, the TOPSIS method can be executed from the
|
|
41
|
+
command line using the following format:
|
|
42
|
+
|
|
43
|
+
topsis <input_file> <weights> <impacts> <output_file>
|
|
44
|
+
|
|
45
|
+
Example:
|
|
46
|
+
|
|
47
|
+
topsis data.csv "1,1,1" "+,+,+" result.csv
|
|
48
|
+
|
|
49
|
+
Here,
|
|
50
|
+
input_file : CSV or Excel (.xlsx) file containing the data
|
|
51
|
+
weights : Comma-separated numerical values indicating importance of criteria
|
|
52
|
+
impacts : Comma-separated symbols (+ or -) indicating benefit or cost criteria
|
|
53
|
+
output_file : CSV file where the result will be stored
|
|
54
|
+
|
|
55
|
+
-----------------------------------------------------------------------
|
|
56
|
+
|
|
57
|
+
Input File Format
|
|
58
|
+
|
|
59
|
+
The input file must be provided in CSV or Excel (.xlsx) format.
|
|
60
|
+
|
|
61
|
+
The first column of the file should contain the names of the alternatives.
|
|
62
|
+
All remaining columns must contain numeric values only.
|
|
63
|
+
|
|
64
|
+
Sample Input Table:
|
|
65
|
+
|
|
66
|
+
Alternative | C1 | C2 | C3
|
|
67
|
+
A1 | 250 | 16 | 12
|
|
68
|
+
A2 | 200 | 20 | 8
|
|
69
|
+
A3 | 300 | 14 | 16
|
|
70
|
+
|
|
71
|
+
-----------------------------------------------------------------------
|
|
72
|
+
|
|
73
|
+
Weights and Impacts
|
|
74
|
+
|
|
75
|
+
Weights represent the importance of each criterion.
|
|
76
|
+
They must be provided as comma-separated numeric values.
|
|
77
|
+
|
|
78
|
+
Example:
|
|
79
|
+
"1,1,1"
|
|
80
|
+
|
|
81
|
+
Impacts specify whether a criterion is beneficial or non-beneficial.
|
|
82
|
+
Use '+' for benefit criteria and '-' for cost criteria.
|
|
83
|
+
|
|
84
|
+
Example:
|
|
85
|
+
"+,+,-"
|
|
86
|
+
|
|
87
|
+
The number of weights and impacts must be equal to the number of criteria
|
|
88
|
+
columns in the input file.
|
|
89
|
+
|
|
90
|
+
-----------------------------------------------------------------------
|
|
91
|
+
|
|
92
|
+
Output File
|
|
93
|
+
|
|
94
|
+
The output is generated in CSV format.
|
|
95
|
+
|
|
96
|
+
Two additional columns are added to the original data:
|
|
97
|
+
Topsis Score
|
|
98
|
+
Rank
|
|
99
|
+
|
|
100
|
+
A higher Topsis Score indicates a better alternative.
|
|
101
|
+
The alternative with the highest score is assigned rank 1.
|
|
102
|
+
|
|
103
|
+
-----------------------------------------------------------------------
|
|
104
|
+
|
|
105
|
+
Error Handling
|
|
106
|
+
|
|
107
|
+
The program performs the following validations before processing the data:
|
|
108
|
+
|
|
109
|
+
Correct number of command-line arguments
|
|
110
|
+
Input file existence
|
|
111
|
+
Minimum of three columns in the input file
|
|
112
|
+
Numeric values in criteria columns
|
|
113
|
+
Matching number of weights, impacts, and criteria columns
|
|
114
|
+
Valid impact values (+ or -)
|
|
115
|
+
|
|
116
|
+
Appropriate error messages are displayed if any of the above conditions fail.
|
|
117
|
+
|
|
118
|
+
-----------------------------------------------------------------------
|
|
119
|
+
|
|
120
|
+
About TOPSIS
|
|
121
|
+
|
|
122
|
+
TOPSIS ranks alternatives based on their relative closeness to the ideal solution.
|
|
123
|
+
The alternative closest to the ideal best solution and farthest from the
|
|
124
|
+
ideal worst solution is considered the best option.
|
|
125
|
+
|
|
126
|
+
-----------------------------------------------------------------------
|
|
127
|
+
|
|
128
|
+
Author
|
|
129
|
+
|
|
130
|
+
Khushi Mehta
|
|
131
|
+
Developed as part of an academic assignment
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: Topsis-KhushiMehta-102303769
|
|
3
|
+
Version: 1.0.1
|
|
4
|
+
Summary: Command-line implementation of TOPSIS decision making method
|
|
5
|
+
Author: Khushi Mehta
|
|
6
|
+
Description-Content-Type: text/markdown
|
|
7
|
+
Requires-Dist: pandas
|
|
8
|
+
Requires-Dist: numpy
|
|
9
|
+
Requires-Dist: openpyxl
|
|
10
|
+
Dynamic: author
|
|
11
|
+
Dynamic: description
|
|
12
|
+
Dynamic: description-content-type
|
|
13
|
+
Dynamic: requires-dist
|
|
14
|
+
Dynamic: summary
|
|
15
|
+
|
|
16
|
+
TOPSIS Python Package
|
|
17
|
+
|
|
18
|
+
This project is a Python command-line tool that implements the TOPSIS
|
|
19
|
+
(Technique for Order Preference by Similarity to Ideal Solution) method.
|
|
20
|
+
|
|
21
|
+
TOPSIS is a multi-criteria decision making technique used to rank different
|
|
22
|
+
alternatives based on their distance from an ideal best solution and an
|
|
23
|
+
ideal worst solution.
|
|
24
|
+
|
|
25
|
+
This package allows users to apply the TOPSIS method easily using a single
|
|
26
|
+
command from the terminal.
|
|
27
|
+
|
|
28
|
+
-----------------------------------------------------------------------
|
|
29
|
+
|
|
30
|
+
Installation
|
|
31
|
+
|
|
32
|
+
The package can be installed using pip.
|
|
33
|
+
|
|
34
|
+
pip install Topsis-KhushiMehta-102303769
|
|
35
|
+
|
|
36
|
+
-----------------------------------------------------------------------
|
|
37
|
+
|
|
38
|
+
Usage
|
|
39
|
+
|
|
40
|
+
After installing the package, the TOPSIS method can be executed from the
|
|
41
|
+
command line using the following format:
|
|
42
|
+
|
|
43
|
+
topsis <input_file> <weights> <impacts> <output_file>
|
|
44
|
+
|
|
45
|
+
Example:
|
|
46
|
+
|
|
47
|
+
topsis data.csv "1,1,1" "+,+,+" result.csv
|
|
48
|
+
|
|
49
|
+
Here,
|
|
50
|
+
input_file : CSV or Excel (.xlsx) file containing the data
|
|
51
|
+
weights : Comma-separated numerical values indicating importance of criteria
|
|
52
|
+
impacts : Comma-separated symbols (+ or -) indicating benefit or cost criteria
|
|
53
|
+
output_file : CSV file where the result will be stored
|
|
54
|
+
|
|
55
|
+
-----------------------------------------------------------------------
|
|
56
|
+
|
|
57
|
+
Input File Format
|
|
58
|
+
|
|
59
|
+
The input file must be provided in CSV or Excel (.xlsx) format.
|
|
60
|
+
|
|
61
|
+
The first column of the file should contain the names of the alternatives.
|
|
62
|
+
All remaining columns must contain numeric values only.
|
|
63
|
+
|
|
64
|
+
Sample Input Table:
|
|
65
|
+
|
|
66
|
+
Alternative | C1 | C2 | C3
|
|
67
|
+
A1 | 250 | 16 | 12
|
|
68
|
+
A2 | 200 | 20 | 8
|
|
69
|
+
A3 | 300 | 14 | 16
|
|
70
|
+
|
|
71
|
+
-----------------------------------------------------------------------
|
|
72
|
+
|
|
73
|
+
Weights and Impacts
|
|
74
|
+
|
|
75
|
+
Weights represent the importance of each criterion.
|
|
76
|
+
They must be provided as comma-separated numeric values.
|
|
77
|
+
|
|
78
|
+
Example:
|
|
79
|
+
"1,1,1"
|
|
80
|
+
|
|
81
|
+
Impacts specify whether a criterion is beneficial or non-beneficial.
|
|
82
|
+
Use '+' for benefit criteria and '-' for cost criteria.
|
|
83
|
+
|
|
84
|
+
Example:
|
|
85
|
+
"+,+,-"
|
|
86
|
+
|
|
87
|
+
The number of weights and impacts must be equal to the number of criteria
|
|
88
|
+
columns in the input file.
|
|
89
|
+
|
|
90
|
+
-----------------------------------------------------------------------
|
|
91
|
+
|
|
92
|
+
Output File
|
|
93
|
+
|
|
94
|
+
The output is generated in CSV format.
|
|
95
|
+
|
|
96
|
+
Two additional columns are added to the original data:
|
|
97
|
+
Topsis Score
|
|
98
|
+
Rank
|
|
99
|
+
|
|
100
|
+
A higher Topsis Score indicates a better alternative.
|
|
101
|
+
The alternative with the highest score is assigned rank 1.
|
|
102
|
+
|
|
103
|
+
-----------------------------------------------------------------------
|
|
104
|
+
|
|
105
|
+
Error Handling
|
|
106
|
+
|
|
107
|
+
The program performs the following validations before processing the data:
|
|
108
|
+
|
|
109
|
+
Correct number of command-line arguments
|
|
110
|
+
Input file existence
|
|
111
|
+
Minimum of three columns in the input file
|
|
112
|
+
Numeric values in criteria columns
|
|
113
|
+
Matching number of weights, impacts, and criteria columns
|
|
114
|
+
Valid impact values (+ or -)
|
|
115
|
+
|
|
116
|
+
Appropriate error messages are displayed if any of the above conditions fail.
|
|
117
|
+
|
|
118
|
+
-----------------------------------------------------------------------
|
|
119
|
+
|
|
120
|
+
About TOPSIS
|
|
121
|
+
|
|
122
|
+
TOPSIS ranks alternatives based on their relative closeness to the ideal solution.
|
|
123
|
+
The alternative closest to the ideal best solution and farthest from the
|
|
124
|
+
ideal worst solution is considered the best option.
|
|
125
|
+
|
|
126
|
+
-----------------------------------------------------------------------
|
|
127
|
+
|
|
128
|
+
Author
|
|
129
|
+
|
|
130
|
+
Khushi Mehta
|
|
131
|
+
Developed as part of an academic assignment
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
from setuptools import setup, find_packages
|
|
2
|
+
from pathlib import Path
|
|
3
|
+
|
|
4
|
+
this_directory = Path(__file__).parent
|
|
5
|
+
long_description = (this_directory / "README.md").read_text()
|
|
6
|
+
|
|
7
|
+
setup(
|
|
8
|
+
name="Topsis-KhushiMehta-102303769",
|
|
9
|
+
version="1.0.1",
|
|
10
|
+
packages=find_packages(),
|
|
11
|
+
install_requires=[
|
|
12
|
+
"pandas",
|
|
13
|
+
"numpy",
|
|
14
|
+
"openpyxl"
|
|
15
|
+
],
|
|
16
|
+
entry_points={
|
|
17
|
+
"console_scripts": [
|
|
18
|
+
"topsis=topsis_khushi.topsis:main"
|
|
19
|
+
]
|
|
20
|
+
},
|
|
21
|
+
author="Khushi Mehta",
|
|
22
|
+
description="Command-line implementation of TOPSIS decision making method",
|
|
23
|
+
long_description=long_description,
|
|
24
|
+
long_description_content_type="text/markdown",
|
|
25
|
+
)
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.4
|
|
2
|
-
Name: Topsis-KhushiMehta-102303769
|
|
3
|
-
Version: 1.0.0
|
|
4
|
-
Summary: TOPSIS decision making method
|
|
5
|
-
Author: Khushi
|
|
6
|
-
Requires-Dist: pandas
|
|
7
|
-
Requires-Dist: numpy
|
|
8
|
-
Requires-Dist: openpyxl
|
|
9
|
-
Dynamic: author
|
|
10
|
-
Dynamic: requires-dist
|
|
11
|
-
Dynamic: summary
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.4
|
|
2
|
-
Name: Topsis-KhushiMehta-102303769
|
|
3
|
-
Version: 1.0.0
|
|
4
|
-
Summary: TOPSIS decision making method
|
|
5
|
-
Author: Khushi
|
|
6
|
-
Requires-Dist: pandas
|
|
7
|
-
Requires-Dist: numpy
|
|
8
|
-
Requires-Dist: openpyxl
|
|
9
|
-
Dynamic: author
|
|
10
|
-
Dynamic: requires-dist
|
|
11
|
-
Dynamic: summary
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
from setuptools import setup, find_packages
|
|
2
|
-
|
|
3
|
-
setup(
|
|
4
|
-
name="Topsis-KhushiMehta-102303769",
|
|
5
|
-
version="1.0.0",
|
|
6
|
-
packages=find_packages(),
|
|
7
|
-
install_requires=["pandas", "numpy", "openpyxl"],
|
|
8
|
-
entry_points={
|
|
9
|
-
"console_scripts": [
|
|
10
|
-
"topsis=topsis_khushi.topsis:main"
|
|
11
|
-
]
|
|
12
|
-
},
|
|
13
|
-
author="Khushi",
|
|
14
|
-
description="TOPSIS decision making method",
|
|
15
|
-
)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{topsis_khushimehta_102303769-1.0.0 → topsis_khushimehta_102303769-1.0.1}/topsis_khushi/__init__.py
RENAMED
|
File without changes
|
{topsis_khushimehta_102303769-1.0.0 → topsis_khushimehta_102303769-1.0.1}/topsis_khushi/topsis.py
RENAMED
|
File without changes
|