关于算法:R语言实现随机前沿分析SFA数据包络分析DEA自由处置包分析FDH和BOOTSTRAP方法

59次阅读

共计 2385 个字符,预计需要花费 6 分钟才能阅读完成。

原文链接:http://tecdat.cn/?p=23709 

在经济学中,技术效率是指在既定的投入下产出可减少的能力或在既定的产出下投入可缩小的能力。罕用度量技术效率的办法是生产前沿分析方法。所谓生产前沿是指在肯定的技术水平下,各种比例投入所对应的最大产出汇合。而生产前沿通常用生产函数示意。前沿分析方法依据是否已知生产函数的具体的模式分为参数办法和非参数办法,前者以随机前沿剖析(StochasticFrontierAnalysis,下文简称 SFA)为代表,后者以数据包络剖析(DataEnvelopeAnalysis,下文简称 DEA)为代表。

本文在 R 软件中实现 SFA、DEA 与自在处理包剖析 FDH 模型。

用 R 进行模仿

依照 p =0.2 的二项分布,随机生成一个大小为 100 的向量。

> x

plot(table(x), main = "frequency")

其余散布。泊松 P(λ)(函数 rpois)等。

2. 数字变量 依照高斯分布 N(μ=1,σ=1)随机生成一个大小为 100 的向量。

> x hist(x, main = "")

其余散布。Uniform U[a,b](函数 runif)等等。

模仿数据

输入 y 和输出 x 都是 n =15 的大小

真正的前沿是由函数定义的。
 

为了模仿数据:

1. 定义输出的矢量为 x∼U[0,1]

2. 定义一个向量 u∼N+(µ = 0.25, σ = 0.2)

3. 输出的矢量定义为 

函数 set.seed 容许咱们放弃雷同的模仿数据

> u = rtmvnorm(n = ns, mean = c(0.25), sigma = c(0.2),
+ lower = c(0))
> y = ybar/(1 + u)

数据的示意办法

模仿数据。

> plot(y ~ x

绘制真正的边界。

> lines(t.fr ~ x.seq)

“ 实在前沿 “ 效率测算

以产出为导向的测算。

输出导向的办法:

Shepard 办法:

> lambda = y/sqrt(x)
> theta = y^2/x
> delta = 1/theta

可反复钻研

> matable <- xtable(tab1\[1:5, \], digits = 3, align = "l|ccc",
+ caption = ""实在前沿效率测算")

表: 实在_前沿效率_

随机前沿

1. 用函数 lm 调整一个线性模型,并保留回归线的系数 β:y = α + βx

2. 找到能使(yi-yˆi)最大化的公司 k,i=1,…,n。留神,公司 k 能够通过函数辨认来手动找到和检测

3. 计算 α 0,使回归线 y = α 0 + βx 穿过企业 k,并代表随机前沿。

1. OLS 模型

> res.lm <- lm(y ~ x)

2. 应用函数辨认

> identify(x, y)

3. 找到 α0

> alpha2 <- y\[3\] - beta.lm\[2\] *
+ x\[3\]
> plot(y ~ x, type = "p",
+ 1))

随机前沿效率测算

让咱们定义 f1 : x → α 0 + βx

> f1 = function(x) alpha2 + beta.lm\[2\] * x

> f1.inv = function(x) (x - alpha2)/beta.lm\[2\]

面向产出的办法。

面向输出的办法:

Shepard 办法:

DEA – FDH 示意

手动检测位于两个边界上的公司

> plot(y ~ x)
> lines(x\[c(2, 9, 3, 4)\], legend = c("DEA",
+ "FDH"))

DEA-FDH 效率前沿 / 衡量标准

让咱们思考 5 号公司

1. 如果该公司在输入方向上是无效的,它将位于前沿线的哪一部分?在输出方向上?

2. 利用这个预计前沿的地位,计算出效率的衡量标准

Naive Bootstrap

反复 B 次(用循环的形式)

1. 用函数样本在 15 个观测值中取样

2. 计算前沿的新估计值

3. 计算新的效率办法

4. 贮存后果,计算偏差, 方差, 置信区间

对实在数据的剖析

数据集

在 62 个农场察看到一个输入变量和三个输出变量

> plot(y ~ x1,pch = 16, col = "blue")
> abline(lm(y ~ x1, data), col = "red")

散点图 3 -d

> scatterplot3d(x1,
+ x2, y)

数据结构

p 个输出蕴含在一个 p×n 的矩阵中

> input <- t(cbind(spain$x1, spain$x2, spain$x3))

q 个输入蕴含在一个 q×n 的矩阵中

> output <- t(matrix(spain$y))

效率的衡量标准

计算 DEA 效率估计值

计算 FDH 效率估计值

计算 m 阶效率估计值

计算非参数的条件和非条件的 α - 量化预计(默认状况下,α=0.95

> res <- rbind(dea, fdh, orderm,
+ res.hquan)

你能够应用函数 order 或 sort 来计算企业的排名,排名依据效率测算。

> plot(density(res.dea)

Bootstrap

函数 boot 实现了 Simar 和 Wilson(1998)的 bootstrap 办法,用于预计 Shepard(1970)输出和输入间隔函数的置信区间。

> boot(input, output)

最受欢迎的见解

1.R 语言多元 Logistic 逻辑回归 利用案例

2. 面板平滑转移回归 (PSTR) 剖析案例实现

3.matlab 中的偏最小二乘回归(PLSR)和主成分回归(PCR)

4.R 语言泊松 Poisson 回归模型剖析案例

5. R 语言混合效应逻辑回归 Logistic 模型剖析肺癌

6.r 语言中对 LASSO 回归,Ridge 岭回归和 Elastic Net 模型实现

7. R 语言逻辑回归、Naive Bayes 贝叶斯、决策树、随机森林算法预测心脏病

8.python 用线性回归预测股票价格

9. R 语言用逻辑回归、决策树和随机森林对信贷数据集进行分类预测

正文完
 0