semvec/pypi-packages huggingface dataset:
topsis-antuanant 0.0.3
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
Requires Python: >=3.7

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 altenrative of shortest Euclidean distance from the idael solution, and fartherst distance from the negative-ideal solution. More details at wikipedia. The TOPSIS algorithm is succintly explained in this paper comparing TOPSIS and VIKOR methods

Using TOPSIS-Python
TOPSIS-Python can be run as in the following example:

>>> import numpy as np
>>> from topsis import topsis
>>> a = [[7, 9, 9, 8], [8, 7, 8, 7], [9, 6, 8, 9], [6, 7, 8, 6]]
>>> w = [0.1, 0.4, 0.3, 0.2]
>>> I = np.array([1, 1, 1, 0]
>>> decision = topsis.topsis(a, w, I)
The decision matrix (a) should be constructed with each row representing an alternative, and each column representing a criterion. We have used an example given in TOPSIS Method in MADM (Dr. Farhad Faez)

Weights (w) is not already normalised will be normalised upon initialisation. Information on benefit (1) cost (0) criteria should be provided in I.

By default, the optimisation (TOPSIS calculation) does not take place. No values are stored in decision.C or decision.optimum_choice.

These can be calculated, either by calling decision.calc(), or by calling a representation of the decision (which will itself call decision.calc()):

>>> decision

Alternatives ranking C:
[0.74269409 0.40359933 0.17586999 0.44142927]

Best alternative
a[0]: [7. 9. 9. 8.]

The rankings are saved in decision.C, with the highest ranking $0.74269409$ offering us the best decision, and lowest ranking $0.17586999$ offering the worst decision making, according to TOPSIS method.

We are also then shown the best alternative index (which happens to be index 0 in this example), and the associated criteria coefficients of this alternative.


Anant Chopra  101703063
Aarshi Arora  101703005
querytree 0.1.1
A data structure for quickly dealing with nested data in different formats
Requires Python: >=3.6

# QueryTree

QueryTree is a python data structure that lets you quickly access deeply nested data and load/save it in any major format.

With QueryTree, you don't have to check for the esistance of (or create) any intermediate nodes.

```python
json_str = """
{
    "foo": {
        "bar": [
            {
                "baz": {
                    "n": 1
                }
            },
            {
                "baz": {
                    "n": 1
                },
                "buz": {
                    "k": 2
                }
            }
        ]
    }
}
"""

tree = Tree.parse_json(json_str)
print(tree['foo.bar.0.baz.n'])  # 1
print(tree['foo.bar.1.buz.k'])  # 2

# accessing nonexistant locations isn't a problem
print(tree['foo.bar.0.buz.k'])  # None
print(tree['something.else'])   # None

# assign values
tree['foo.bar.0.baz.n'] = 99
tree['foo.foo'] = {"myvalue": "a value"}

# save as any format
print(tree.to_yaml())
```
Outputs:
```yaml
foo:
  bar:
  - baz:
      n: 99
  - baz:
      n: 1
    buz:
      k: 2
  foo:
    myvalue: a value
```
easyqr 1.0
QR code conversion tool
Requires Python: >=3.6

# easyqr

## 介绍
便捷的二维码转换工具 支持文字转二维码,二维码转文字(支持中文,支持**本地上传**以及**在线二维码**)

## 安装
```
pip install easyqr
```

## 使用说明
```python
from easyqr import easyqr as qr

#文字转二维码
print(qr.code('这是一个简单的二维码转换模块'))
#上传二维码
url = qr.upload('01.png')
#解析二维码
print(qr.online(url))
```

使用So easy!

## 注意
因为使用了网络接口,大量识别转换因为网络及服务器压力缘故,可能会丢失或者拒绝访问,本模块目前为实验性质设计,如需频繁使用,请与服务商[**草料二维码**](https://cli.im/)洽谈商务合作,请知悉!



## 更新 


|  版本  |  内容  |
|  ----  | ----  |
|  1.0  |  调优完毕,正式版本  |
|  0.6  |  一些不值得注意的优化  |
|  0.5  |  一些不值得注意的优化  |
|  0.4  |  一些不值得注意的优化  |
|  0.3  |  一些不值得注意的优化  |
|  0.2  |  1.优化了导入包的逻辑机构,现在只需要 import easyqr 就可以了2.缺失的依赖项自动导入,无需手动添加依赖项 |
|  0.1  |  初步框架  |