第 9 章 数据的决策分析及可视化

9.1 确定性分析

9.1.1 单目标求解及图示

(1)读取数据

import pandas as pd
Tv=pd.read_excel('./data/DaPy_data.xlsx','Target',index_col=0)
Tv #目标值 

(2)计算年收益金额

Tv['年收益']=Tv.年销售量*(Tv.销售单价-Tv.单件成本)-Tv.设备投资
Tv 

(3)年收益的直观分析

import matplotlib.pyplot as plt            
plt.rcParams['font.sans-serif']=['SimHei']
#plt.rcParams['figure.dpi']=90  #分辨率
Tv['年收益'].plot(kind='bar')

(4)确定最佳方案:收益率最大者为最佳方案。

Tv['年收益'].idxmax()

9.1.2 多目标求解及图示

(1)计算理想值:

Ev=[min(Tv.设备投资), min(Tv.单件成本), max(Tv.年销售量), max(Tv.销售单价), max(Tv.年收益)]
Ev #理想值 

(2)计算差距: 

Tv_Ev2=((Tv-Ev))**2    #差值的平方 
Tv_Ev2

Dv=(Tv_Ev2).sum(1)
Dv   #差距

Tv['差距']=Dv
Tv

(3)差距的直观分析

Dv.plot(kind='bar');

(4)确定最佳方案

Dv.idxmin() 

pd.DataFrame({'单目标':Tv['年收益'],'单目标方案':Tv['年收益']==Tv['年收益'].max(),
              '多目标':Tv['差距'],'多目标方案':Tv['差距']==Tv['差距'].min()})

9.2 不确定性决策分析

9.2.1 分析方法简介

PLm=pd.DataFrame();    #构建损益矩阵 ProfitLoss matrix 
PLm['畅销']= 12000*(Tv.销售单价-Tv.单件成本)-Tv.设备投资; 
PLm['一般']= 8000*(Tv.销售单价-Tv.单件成本)-Tv.设备投资; 
PLm['滞销']= 1500*(Tv.销售单价-Tv.单件成本)-Tv.设备投资;
PLm 

9.2.2 不确定分析原则

9.2.2.1 乐观原则

lg=PLm.max(axis=1)
lg  #每列最大者

BQD=PLm.copy()
print(PLm)
BQD['乐观']=lg
print(BQD)

lg.plot(kind='bar')

lg.idxmax() 

9.2.2.2 悲观原则

bg=PLm.min(1)
bg

BQD['悲观']=bg
BQD

plt.rcParams['axes.unicode_minus']=False;  #正常显示图中负号
bg.plot(kind='bar')

bg.idxmax() 

9.2.2.3 折中原则

a=0.35 
zz= a*lg + (1-a)*bg
zz

BQD['折中']=zz
BQD

zz.plot(kind='bar')

zz.idxmax() 

9.2.2.4 后悔原则

Rm=PLm.max()-PLm
Rm  #构建后悔矩阵 Regret matrix 

hh=Rm.max(1)
hh 

BQD['后悔']=hh
BQD

hh.plot(kind='bar')

hh.idxmin() 

pd.DataFrame({'乐观':lg,'乐观方案':lg==lg.max(),'悲观':bg,'悲观方案':bg==bg.max(),
              '折中':zz,'折中方案':zz==zz.max(),'后悔':hh,'后悔方案':hh==hh.min()})

9.3 概率型风险分析

9.3.1 期望值法及直观分析

probE=[0.1,0.65,0.25]  #初始概率 
qw=(probE*PLm).sum(1)
qw

qw.plot(kind='bar')

qw.idxmax()

9.3.2 后悔期望值法及直观分析

Rm

probE=[0.1,0.65,0.25]
hhqw=(probE*Rm).sum(1)
hhqw

hhqw.plot(kind='bar')

hhqw.idxmin()

pd.DataFrame({'期望值':qw,'期望方案':qw==qw.max(),
              '后悔期望值':qw,'后悔期望方案':hhqw==hhqw.min()})

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值