LMDI 理论推导详解【从理论到Python-MATLAB实现(编程实现)】
LMDI 理论推导:
点击这里查看
Python编程实现:
def LMDI(data,tt,t0):
def Delta_XX(yt,y0,xt,x0):
def L(yt,y0):
if yt == y0:
return 0
else:
return (yt-y0)/(np.log(yt) - np.log(y0))
return L(yt,y0)*np.log(xt/x0)
Delta_y = data[tt,0]-data[t0,0]
Delta_x = []
for i in range(1,np.shape(data)[1]):
Delta_x.append( Delta_XX(data[tt,0],data[t0,0],data[tt,i], data[t0,i]) )
return Delta_y,Delta_x
MATLAB更简单,若有需要请私信博主