A Python package for TOPSIS implementation
Project description
🧠 TOPSIS Python Package by Danish Sharma 🚀
Welcome to the Topsis102203633Danishsharma package! 🐍 This Python package allows you to easily perform TOPSIS (Technique for Order Preference by Similarity to Ideal Solution) analysis, a popular method in Multi-Criteria Decision Analysis (MCDA) to rank and evaluate alternatives based on multiple criteria.
📦 Installation
You can install the package via pip:
pip install topsis102203633Danishsharma
Alternatively, you can clone this repository and use it locally:
git clone https://github.com/Danish2op/voice-controlled-topsis-package.git
cd voice-controlled-topsis-package
python setup.py install
🎯 Features
- TOPSIS Analysis: Perform the TOPSIS algorithm on your dataset.
- Handling Missing Data: Fill missing values using various strategies like mean, median, mode, etc.
- Voice Commands: Use voice commands to run analysis, plot graphs, and more. 🎤
- Flexible: Supports different distance metrics and criteria impacts.
- Easy to Use: The interface is simple and intuitive for both beginners and experts. 😎
📂 Package Structure
Here’s an overview of the important parts of the package:
topsis102203633Danishsharma/
├── topsis102203633Danishsharma_core/
│ ├── __init__.py
│ ├── topsis.py
│
├── README.md
├── setup.py
├── LICENSE
├── MANIFEST.in
🚀 Usage
Here’s a quick guide to using the Topsis class, including all available options.
🧑💻 Step 1: Import the package
from topsis102203633Danishsharma_core.topsis import Topsis, fill_missing_data, VoiceControl
import pandas as pd
# Load your dataset
df = pd.read_csv('path/to/your/data.csv')
# Set weights and impacts
weights = [0.3, 0.2, 0.2, 0.1, 0.2]
impacts = ['+', '-', '+', '-', '+']
#Or you can load a file too like data set
🧑💻 Step 2: Create the TOPSIS Object
topsis = Topsis(df, weights, impacts, distance_metric='euclidean', missing_data_strategy='mean', show_para=True)
- distance_metric: Choose from
'euclidean','manhattan','chebyshev','minkowski', or'cosine'. - missing_data_strategy: Choose from
'mean','median','mode','ffill','bfill','interpolate_linear', or'interpolate_polynomial'. - show_para: Set to
Trueto display the full results including all parameters.
🧑💻 Step 3: Run the TOPSIS Calculation
result = topsis.calculate()
print(result)
This will give you the alternatives ranked according to the TOPSIS methodology.
🧑💻 Step 4: Plot the Results (Optional)
topsis.plot_graph(result)
This will plot a bar graph with the alternatives and their respective TOPSIS scores.
🎤 Voice-Controlled Commands
You can also use voice commands to control the package.
Available Commands:
- "start": Start the TOPSIS analysis.
- "fill missing": Fill missing data in the dataset.
- "graph": Plot the graph of results.
- "exit": Exit the application.
- "help": Show the list of available commands.
Example usage:
voice_control = VoiceControl(df, weights, impacts)
voice_control.run() # Start listening for commands
💡 Default Parameters and Options
Here are the default parameters that you can use:
- Distance Metric:
'euclidean' - Missing Data Strategy:
'mean' - Show Parameters:
False
🔧 Advanced Configuration
You can configure additional parameters to fit your needs:
- weights: A list of weights for each criterion.
- impacts: A list of impacts for each criterion, where
'+'indicates a positive impact, and'-'indicates a negative impact.
📑 Example with Voice Command
Here’s how you can use voice commands to perform actions like running TOPSIS analysis and plotting results.
from topsis102203633Danishsharma_core.topsis import VoiceControl
voice_control = VoiceControl(df, weights, impacts)
voice_control.run() # Start listening for commands
🤝 Contributing
We welcome contributions! If you'd like to contribute to this project, please feel free to submit a pull request or open an issue.
🧑💻 License
This project is licensed under the MIT License.
For more information, please visit our GitHub Repository.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file topsis102203633Danishsharma-0.1.0.tar.gz.
File metadata
- Download URL: topsis102203633Danishsharma-0.1.0.tar.gz
- Upload date:
- Size: 6.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.11.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
18e1f34200ce7a2c7dd44a6613e4c2fc0d39a10377beb7c69a8227677dff2d5a
|
|
| MD5 |
75817c61d594844fec623180e9a26c4c
|
|
| BLAKE2b-256 |
fcbeff516e795ba31655ca30d0751424db418e1aec28b5741eea0911e6263d62
|
File details
Details for the file topsis102203633Danishsharma-0.1.0-py3-none-any.whl.
File metadata
- Download URL: topsis102203633Danishsharma-0.1.0-py3-none-any.whl
- Upload date:
- Size: 7.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.11.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
170f98ac154a3ff3ab83ab631e5b2667225f746edfc6dca13fb1451fda568ac2
|
|
| MD5 |
02d241f0da29c8fafef2ffed763242bf
|
|
| BLAKE2b-256 |
9e6d1ec54db4b72903790da7d03b2022013f875b9259cbe9f8480881af298f01
|