R语言面板平滑转换回归(PSTR)分析案例实现

建模过程包括三个阶段:规范,估计和评估。

由Kaizong Ye,Liao Bao撰写

可帮助用户进行模型规范测试,进行PSTR模型评估以及进行模型评估。

在程序包中实现了集群依赖性和异方差性一致性测试。

还实现了wild bootstrap和cluster wild bootstrap测试。

并行计算(作为选项)在某些函数中实现,尤其是引导测试。因此,该程序包适合在超级计算服务器上运行多个核心的任务。

数据

 “Hansen99”的数据集来提供示例。 


热门课程

R语言数据分析挖掘必知必会

面对扑面而来的数据浪潮,包含Google、Facebook等国际企业,都已采用R语言进行数据分析

探索课程

什么是网格搜索?

初始化

您可以通过执行创建PSTR类的新对象

它说使用了数据集“Hansen99”,因变量是“inva”,第4列到第20列的数据中的变量是线性部分的解释变量(尽管你可以写下它们的名称),非线性部分中的解释变量是“indep_k”中的四个,潜在的转换变量是“vala”(Tobin的Q)。

以下代码执行线性测试

您可以看到函数“LinTest”获取PSTR对象“pstr”并在返回时覆盖它。这是我推荐的方式,因为处理包中PSTR对象的函数通过添加新的atrributes或成员来更新对象。但是,相同的函数将更改它添加的属性的值。您当然可以创建新的PSTR对象来获取返回值,以便保存模型的不同设置的结果。

 可以通过运行以下代码来执行wild bootstrap和wild cluster bootstrap。 

估计

当您确定要用于估计的转换变量时,在本例中为“inva”,您可以估计PSTR模型

默认情况下,使用“optim”方法“L-BFGS-B”,但您可以通过执行更改方法进行估算

 还实现了线性面板回归模型的估计。 

评估

可以基于估计的模型进行评估测试

请注意,在“EvalTest”中,每次只有一个转换变量用于无剩余非线性测试。这与“LinTest”函数不同,后者可以采用多个转换变量。这就是为什么我将结果保存到新的PSTR对象“pstr1”而不是覆盖的原因。通过这样做,我可以在新对象中保存来自不同转换变量的更多测试结果。

请注意,评估函数不接受线性面板回归模型中返回的对象“pstr0”,因为评估测试是针对估计的PSTR模型设计的,而不是线性模型。

绘制

估算PSTR模型后,您可以通过运行绘制估计的过渡函数

还可以根据转换变量绘制系数曲线,标准误差和p值。

​​

绘图功能plot_response,描述了其中我称为响应,一些解释性变量和过渡可变在PSTR模型。

我们可以看到,如果没有非线性,对变量的响应是一条直线。如果变量和转换变量是不同的,我们可以绘制曲面,z轴为响应,x轴和y轴为两个变量。如果变量和转换变量相同,则变为曲线。X我Ťxitq我ŤqitX我Ťxitq我Ťqit

我们通过运行来制作图表

x轴上的数字看起来不太好,因为很难找到转折点的位置。

ggplot2软件包允许我们手动绘制数字(PSTR包与一些预先包装的软件包很好地协作),甚至是x轴上的标签(以及更多)。

现在我们非常清楚地看到,大约0.5的转折点将曲线切割成两种状态,并且两种状态的行为完全不同。该图表是关于托宾Q对预期投资的贡献滞后。低Q值公司(其潜力被金融市场评估为低)看起来不太愿意改变他们未来的投资计划,或者可能会改变。


可下载资源

关于作者

Kaizong Ye拓端研究室(TRL)的研究员。

本文借鉴了作者最近为《R语言数据分析挖掘必知必会 》课堂做的准备。

​非常感谢您阅读本文,如需帮助请联系我们!


 
QQ在线咨询
售前咨询热线
15121130882
售后咨询热线
0571-63341498