脱贫帮扶绩效评价(含代码)-2020年华数杯C题

   日期:2020-08-08     浏览:265    评论:0    
核心提示:支持博主,请关注公众号个人公众号        第一问就是个相关性分析。具体而言,就是计算2015年和2020年各个指标的相关性。例如:2015年和2020年的SR这个指标的相关性是多少,计算方式用皮尔森方法即可。下面是代码```python# -*- coding: utf-8 -*-import pandas as pdimport matplotlib.pyplot as plt# 原始数据的问_脱贫帮扶绩效评价
支持博主三连,点赞、留言、关注公众号
个人公众号

        第一问就是个相关性分析。具体而言,就是计算2015年和2020年各个指标的相关性。例如:2015年和2020年的SR这个指标的相关性是多少,计算方式用皮尔森方法即可。

下面是代码


```python
# -*- coding: utf-8 -*-

import pandas as pd
import matplotlib.pyplot as plt


# 原始数据的问题
file_path = r'G:\数学建模\题目及原数据\华数杯\2020\C\附件 C题数据.xlsx'

data = pd.read_excel(file_path)

variable_2015_lst = ['2015 SR', '2015 CY', '2015 HJ', '2015 WJ', '2015 SS', '2015 总分']
variable_2020_lst = ['2020 SR', '2020 CY', '2020 HJ', '2020 WJ', '2020 SS', '2020 总分']
year_lst = ['2015', '2020']

result_df = pd.DataFrame()
for variable2015, variable_2020 in zip(variable_2015_lst, variable_2020_lst):
    score = data[variable2015].corr(data[variable_2020], method='pearson')
    score = round(score, 4)
    print('%s与%s的相关性:%s'%(variable2015, variable_2020, score))

运行结果:

```python
2015 SR与2020 SR的相关性:0.5342
2015 CY与2020 CY的相关性:0.6399
2015 HJ与2020 HJ的相关性:0.7372
2015 WJ与2020 WJ的相关性:0.6361
2015 SS与2020 SS的相关性:0.5945
2015 总分与2020 总分的相关性:0.7845

        关于第二问中的哪一类帮扶单位绩效高,我们可以用2020年的指标值减去2015年的指标值,得到每一个指标的差,差值越大说明该类帮扶单位在对应的指标上绩效高。

# -*- coding: utf-8 -*-

import pandas as pd
import matplotlib.pyplot as plt

# 原始数据的问题
file_path = r'G:\数学建模\题目及原数据\华数杯\2020\C\附件 C题数据.xlsx'
data = pd.read_excel(file_path)

variable_2015_lst = ['2015 SR', '2015 CY', '2015 HJ', '2015 WJ', '2015 SS', '2015 总分']
variable_2020_lst = ['2020 SR', '2020 CY', '2020 HJ', '2020 WJ', '2020 SS', '2020 总分']
year_lst = ['2015', '2020']

x = list(range(6))
for variable2015, variable_2020 in zip(variable_2015_lst, variable_2020_lst):
    y = []
    for i in range(6):
        df = data[data['帮扶单位类型(0-5)'] == i]
        df['分差'] = df[variable_2020] - df[variable2015]
        mean = df['分差'].mean()
        std = df['分差'].std()
        y.append(mean)
    label = variable2015.split(' ')[1]
    plt.plot(x, y, label=label)

plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
plt.legend()
plt.grid()
plt.xlabel('帮扶单位类型')
plt.ylabel('2020与2015的分数差')
plt.show()


        关于第三问,我们对每个帮扶单位做一次线性拟合(共拟合150个方程)。X分布别为’SR’, ‘CY’, ‘HJ’, ‘WJ’, ‘SS’。每一个X都是2020年的减去2015年的。y是2020年的总分减去2015年的总分。拟合的方程的系数就表示该单位在每个指标的业绩。最后我们选取每个系数的top5就可以了。
        代码关注公众号后可白漂,后台回复:2020华数杯C
结果如下

---SR top5---
   company_id        SR        CY        HJ        WJ        SS
0          98  0.719913  0.207926  0.154313 -0.033354  0.169009
0         100  0.666740  0.030185  0.186537  0.380318  0.484506
0          44  0.664338  0.174609  0.110663  0.217083  0.141089
0          99  0.642504  0.061675  0.185727  0.277872  0.341475
0          56  0.629422  0.069894  0.193090  0.179038  0.298516
---CY top5---
   company_id        SR        CY        HJ        WJ        SS
0          19 -0.911628  0.346364 -0.310959 -0.062712 -0.015163
0          54 -0.931109  0.316867 -0.039841 -0.084724  0.001344
0          28  0.369775  0.245542  0.174397  0.362478  0.250820
0         110  0.502340  0.234190 -0.079497  0.582755  0.091881
0         108  0.149571  0.217162  0.128917  0.048293  0.318738
---HJ top5---
   company_id        SR        CY        HJ        WJ        SS
0          95 -0.470812 -0.121055  0.452960  0.144485  0.054649
0          73 -0.350511  0.091855  0.423066  0.085825  0.277362
0           9  0.043641  0.112998  0.415478  0.213789  0.210940
0          86 -0.014097  0.079601  0.394897 -0.032613  0.166339
0          84  0.372993  0.071486  0.374325  0.214889  0.291991
---WJ top5---
   company_id        SR        CY        HJ        WJ        SS
0          53 -0.060308 -0.046240  0.208327  0.660682  0.012553
0         110  0.502340  0.234190 -0.079497  0.582755  0.091881
0          13  0.010862  0.100271  0.197389  0.548325  0.192313
0         107 -0.188752  0.039968  0.186232  0.503040  0.245607
0          15 -0.050643  0.025602  0.309147  0.467603  0.010930
---SS top5---
   company_id        SR        CY        HJ        WJ        SS
0          75  0.005986 -0.135991  0.070006  0.245015  0.741126
0          72 -0.818486  0.093141  0.107205 -0.387306  0.540927
0          46 -0.446123 -0.069064 -0.470235  0.077136  0.537767
0          35 -0.586572  0.143058  0.039410  0.209232  0.536060
0         100  0.666740  0.030185  0.186537  0.380318  0.484506

关于第四问

  1. 哪些因素对’脱贫先进村庄’称号有影响?
    思路:把每个指标的标准标准差算出来,选择标准差大的若干个指标。标准差反应了数据离
    均值的远近。标准差小,可以认为帮扶单位在这个指标上没有帮助村庄改善。如果我们认为
    指标的重要性是SS、SR,那么就按SS排序,取若干,在按SR排序去若干。

  2. 10个村庄问题
    思路:求出村庄所对应的帮扶单位及类型,对各个指标的均值,用均值作为缺失的评价分数。
    是否能评上称号,和问题1一样的做法

以上仅作参考,思路并不完美,觉得不合适地方自行修改就即可。

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服