python DEA: 非径向距离函数(non-radial directional distance function)

本文介绍了如何用Python实现非径向距离函数(Non-Radial Directional Distance Function, NDDF),作者改造了pyDEA的基础代码,允许自定义投入、产出、方向向量和权重向量。文章提到了产出扩张系数可能大于1的情况,这与传统的理解有所不同。更新部分讨论了考虑非期望产出的NDDF,特别是强/弱处置性的环境问题。作者是仁荷大学的博士生,专注于能源转型和环境经济问题的研究,并欢迎交流与合作。" 52331566,4873181,网易2017内推笔试:最长公共子序列解析,"['算法', '编程挑战', '面试准备', '字符串处理', '数据结构']
摘要由CSDN通过智能技术生成

点赞发Nature
关注中Science

最近在想怎么用python实现非径向距离函数

之前用了pyDEA包https://pypi.org/project/pyDEA/,那个包比较简陋,只有普通的CCR BCC模型。

另一方面,MaxDEA因为是打包好的嘛,所以不够灵活。所以想自己做一个NDDF的模型出来。

所以用pyDEA的初始代码进行了一些改造,直接上代码:

import numpy as np
import pandas as pd
import pulp

class DEAProblem:
    def __init__(self, inputs, outputs, weight_vector, directional_factor=None, returns='CRS',
                 in_weights=[0, None], out_weights=[0, None]):
        self.inputs = inputs
        self.outputs = outputs
        self.returns = returns
        self.weight_vector = weight_vector # weight vector in directional distance function      
        
        self.J, self.I = self.inputs.shape  # no of DMUs, inputs
        _, self.R = self.outputs.shape  # no of outputs
        self._i = range(self.I)  # inputs
        self._r = range(self.R)  # outputs
        self._j = range(self.J)  # DMUs
        if directional_factor == None:
            self.gx = self
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值