pip install pandas
pip install openpyxlimport pandas as pd
df = pd.read_excel('C:\\Users\SuYi\Desktop\python\题目\C\附件1 近5年402家供应商的相关数据.xlsx', sheet_name = 1 )  #打开excel
df['材料数总和'] = df.iloc[:,2:242].sum(axis=1)    #对指定行求和df1=df.loc[df['材料分类']=='A']
df1['采购总价']=df1['材料数总和']*1.2
df2=df.loc[df['材料分类']=='B']
df2['采购总价']=df2['材料数总和']*1.1
df3=df.loc[df['材料分类']=='C']
df3['采购总价']=df3['材料数总和']          #分别对ABC对应Row_sum做乘法df4 = pd.concat([df1,df2,df3],axis=0)  #行标签合并表格df4 = df4.sort_index(axis=0)           #按行名排列df4['方差'] = df.iloc[:,2:242].var(axis=1)   #求方差sheet0 = pd.read_excel('C:\\Users\SuYi\Desktop\python\题目\C\附件1 近5年402家供应商的相关数据.xlsx', sheet_name = 0 )  #导入sheet_name = 0i = 2
n = 0
while n < 10:df['q'] = df.iloc[:,i:i+24].sum(axis=1)sheet0['q'] = sheet0.iloc[:,i:i+24].sum(axis=1)df4['供货满足率',n] = df['q']/sheet0['q']       #每二十四周求和求满足率并输出 共十次i += 24n += 1df4 = df4.fillna(0)           #将nan替换为0df4['供货满足率总和'] = df4.iloc[:,245:255].sum(axis=1)   #求和df4['供货满足率'] = df4['供货满足率总和']/10          #求满足率均值import copy
import pandas as pd
import numpy as npdf5 = pd.read_excel('C:\\Users\SuYi\Desktop\python\题目\C\附件1 近5年402家供应商的相关数据.xlsx', sheet_name = 1 )
df5 = df5.drop( df5.iloc[:,0:242], axis=1 )          #删除指定列
df5['方差'] = df4['方差']
df5['供货满足率'] = df4['供货满足率']
df5['采购总价'] = df4['采购总价']label_need=df5.keys()[0:]data1=df5[label_need].valuesdata2=data1     #指标正向化处理后数据为data2#越小越优指标位置
index=[0]
for i in range(0,len(index)):data2[:,index[i]]=max(data1[:,index[i]])-data1[:,index[i]]index1=[2]
for i in range(0,len(index)):data2[:,index[i]]=max(data1[:,index[i]])-data1[:,index[i]]#0.002~1区间归一化
[m,n]=data2.shape
data3=copy.deepcopy(data2)
ymin=0.002
ymax=1
for j in range(0,n):d_max=max(data2[:,j])d_min=min(data2[:,j])data3[:,j]=(ymax-ymin)*(data2[:,j]-d_min)/(d_max-d_min)+ymin#计算信息熵
p=copy.deepcopy(data3)
for j in range(0,n):p[:,j]=data3[:,j]/sum(data3[:,j])E=copy.deepcopy(data3[0,:])
for j in range(0,n):E[j]=-1/np.log(m)*sum(p[:,j]*np.log(p[:,j]))# 计算权重
w=(1-E)/sum(1-E)#计算得分
df5['得分'] = 0
s=np.dot(data3,w)
Score=100*s/max(s)
for i in range(0,len(Score)):df5['得分'][i] = Score[i]df = pd.read_excel('C:\\Users\SuYi\Desktop\python\题目\C\附件1 近5年402家供应商的相关数据.xlsx', sheet_name = 1 )
df['方差'] = df5['方差']
df['供货满足率'] = df5['供货满足率']
df['采购总价'] = df5['采购总价']
df['得分'] = df5['得分']df = df.sort_values(by='得分', ascending=False)
dfcf = df.iloc[0:50]
cf

2021 年高教社杯全国大学生数学建模竞赛题目 C 题 生产企业原材料的订购与运输 第一题代码相关推荐

  1. 2010年高教社杯全国大学生数学建模竞赛题目B题解析及层次分析法AHP在其中的应用

    2010年高教社杯全国大学生数学建模竞赛题目 B题 2010年上海世博会影响力的定量评估 2010年上海世博会是首次在中国举办的世界博览会.从1851年伦敦的"万国工业博览会"开始 ...

  2. 2021年高教社杯全国大学生数学建模竞赛赛题C题 生产企业原材料的订购与运输 分析、思路与参考文献!!(关注持续更新!!)

    2021 年高教社杯全国大学生数学建模竞赛题目 C 题 生产企业原材料的订购与运输 某建筑和装饰板材的生产企业所用原材料主要是木质纤维和其他植物素纤维材料, 总体可分为 A,B,C 三种类型.该企业每 ...

  3. 2021 年高教社杯全国大学生数学建模竞赛题目(B 题 乙醇偶合制备 C4 烯烃)

    B 题 乙醇偶合制备 C4 烯烃 C4 烯烃广泛应用于化工产品及医药的生产,乙醇是生产制备 C4 烯烃的原料.在制备过程中,催化剂组合(即:Co 负载量.Co/SiO2 和 HAP 装料比.乙醇浓度的 ...

  4. 2017年高教社杯全国大学生数学建模竞赛题目 B题 “拍照赚钱”的任务定价

    "拍照赚钱"的任务定价分析 "拍照赚钱" 是一种需要会员在APP上领取任务,完成后赚取对任务所标定的酬金的自助服务模式,这种APP中任务定价是其核心要素.通过对 ...

  5. 2017年高教社杯全国大学生数学建模竞赛题目 B题 “拍照赚钱”的任务定价

    这是自己参加比赛写的论文,成果归我和王晨曦所有 想要论文的请关注公众号: 在一起的足球 自动获取论文和数十种经典算法,帮助各位提升自己 之前留的是自己的qq号 感觉好多资源都不能让大家自行选择 本着开 ...

  6. 2021 年高教社杯全国大学生数学建模竞赛题目(E 题 中药材的鉴别)

    E 题 中药材的鉴别 不同中药材表现的光谱特征差异较大,即使来自不同产地的同一药材,因其无机元素的化学成分.有机物等存在的差异性,在近红外.中红外光谱的照射下也会表现出不同的光谱特征,因此可以利用这些 ...

  7. 2021 年高教社杯全国大学生数学建模竞赛题目(C 题 生产企业原材料的订购与运输)

    C 题 生产企业原材料的订购与运输 某建筑和装饰板材的生产企业所用原材料主要是木质纤维和其他植物素纤维材料,总体可分为 A,B,C 三种类型.该企业每年按 48 周安排生产,需要提前制定 24 周的原 ...

  8. 2021 年高教社杯全国大学生数学建模竞赛题目(A 题 “FAST”主动反射面的形状调节)

    A 题 "FAST"主动反射面的形状调节 中国天眼--500 米口径球面射电望远镜(Five-hundred-meter Aperture Spherical radio Tele ...

  9. 2021 年高教社杯全国大学生数学建模竞赛题目(D 题 连铸切割的在线优化)

    D 题 连铸切割的在线优化 连铸是将钢水变成钢坯的生产过程,具体流程如下(图 1):钢水连续地从中间包浇入结晶器,并按一定的速度从结晶器向下拉出,进入二冷段.钢水经过结晶器时,与结晶器表面接触的地方形 ...

最新文章

  1. 聊一聊 Spring 中的线程安全性
  2. 使用 Blender* 重新拓扑 VR 和游戏素材
  3. java中Arrays.sort()实现原理
  4. android异步任务详解 AsynTask[转 杨瓦瓦]
  5. 组合测试法是什么 软件测试,组合测试法中的全对偶测试法
  6. ViewPager+TabLayout+Fragment刷新Fragment中的数据
  7. 在VSCode Remote环境下开发Teams Bot
  8. HH SaaS电商系统的结算系统设计
  9. git 别名_Git别名简介:使用Git的更快方法
  10. 【opencv学习】【读取图像、视频、摄像头】
  11. raspberry pi_探索Raspberry Pi Sense HAT
  12. oracle rac 清理log,Oacle rac架构监听日志清理
  13. linux拷贝文件时如果想保留文件原有的时间属性,可以使用选项,Linux考试题完整版.doc...
  14. django web app_妹子用半天时间开发一个员工管理系统,没错django就是这么强悍
  15. 小米笔试题--数组移动
  16. UNIX Linux网络日志分析与流量监控
  17. 【版本控制工具】svn服务器、客户端安装配置及eclipse的svn检出
  18. MySQL 5.5 使用 Event定期自动维护/执行Procedure
  19. Java初学者可以实现的简单小程序(建议收藏学习)
  20. 【阿里云视频点播加密视频播放报错】:网络错误加载数据失败(fragLoadError)或者403

热门文章

  1. Android systrace/atrace/ftrace抓取方法
  2. matlab 画海面图,原来学画画这么简单?4步就能教你学会波浪、海面的画法
  3. Python中取反的理解
  4. 1024程序员节 图灵图书每满100减50
  5. UOJ#418. 【集训队作业2018】三角形
  6. bzoj 3028: 食物(母函数+广义二项式定理)
  7. Node-red开发软PLC程序?
  8. zookeeper的zab协议工作原理之原子广播
  9. 一个强大的XML处理类,老外写的,学习中
  10. CAD怎么添加剖面符号?CAD剖面符号绘制教程