文章的目的
我们经常需要对一些企业、部门、甚至某个城市进行评价,但是用一个指标不可能全面反映这些复杂单元,所以我们经常会用很多指标进行评价,这些指标单位不统一,大小数量级有时候相差很多,把这些复杂的指标最后综合起来成为一个指数,这就是综合评分的本质。综合评价的方法有很多,主要有三类:主观综合评价、客观综合评价、主客观混合评价。本文主要是讲述客观综合平台里的变异系数法。本文有两个目标:
各个指标权重的确定
多个单元的排序(竞争力排名、大学排名、发展水平、幸福排名、税负排名诸如此类)
变异系数法的计算过程
每个城市的评价我们保留了10个指标,首先是要知道哪个指标最重要,一个人身上身上有很多伤口,有刀伤、钝器伤害、拳头打的印子,到底哪个是最致命的!我们把这种重要性的不同称为权重。所以第一件事就是确定10个指标的权重分别是多少。原理这里不谈,我们只谈下计算过程。
导入数据并做初步处理
import matplotlib.pyplot as plt # 第1-3行代码是读入数据的时候,在Python不会产生中文乱码
plt.rcParams['font.sans-serif'] = ['microsoft YaHei']
plt.rcParams['axes.unicode_minus'] = False
import pandas as pd # 第4-5行代码是两个数据分析有名的库,也可以称为工具吧
import numpy as np
from xlwt import * # 这是把最后的数据结果写入excel的库
data = pd.read_excel('D:\\5.python data\\airports.xls') # 把指定位置的excel表格数据导入python形成一个dataframe表格数据,Pd是pandas的简称,这个工具把excel中的数据读入Python中,形成一个称作dataframe的表格,正常的路径是D:\5.python data\airports.xls,但是在python中很容易产生冲突,就把“\”改成了‘\\’.excel中的表要像开始阐述的那样排列。
print(data) # 观察导入的数据表格,如这种类型格式的数据才能导入计算。导入后如下:
city GDP:亿元 人口(万) ... 进出口总值(亿元) 旅客吞吐量(万人次) 货邮吞吐量(万吨)
0 广州 21503.15 1449.84 ... 9714.36 6583.69 233.8500
1 深圳 22438.39 1252.83 ... 28075.33 18142.24 115.9000
2 珠海 2564.73 176.54 ... 3001.10 921.68 3.7400
3 佛山 9549.60 765.67 ... 4358.24 4929.00 0.0242
4 惠州 3830.58 477.70 ... 3419.77 95.69 0.4000
5 香港 22160.