python面板数据分析代码_【译】用python做计量之面板数据模型

【译】用python做计量之面板数据模型

雁陎 • 2020 年 06 月 25 日

Loading...

原文:[https://bashtage.github.io/linearmodels/panel/index.html](https://bashtage.github.io/linearmodels/panel/index.html)

## 介绍

面板数据是具有时间序列(T)和截面(N)两个维度组织的数据。在面板数据的大多数经典应用中,观测的数量N大,而时间段的数量T小(通常在2到5之间)。这些估计量的渐近理论多是在N固定而T会发散的前提下得到的的。

大多数面板模型旨在估计下面方程的参数:

$$

y_{i t}=x_{i t} \beta+\alpha_{i}+\epsilon_{i t}

$$

其中i为观测,t为时间,$\beta$包含了要估计的参数。$\alpha_i$是个体的异质性,无法观测。$\epsilon_{i t}$是特异性误差(idiosyncratic errors),与$\alpha_i$和$x_{it}$不相关。

所有的模型都需要两个输入:

* `dependent`,即因变量$y_{it}$

* `exog`,即自变量$x_{it}$

并使用不同的技术处理$\alpha_i$

* [`PanelOLS`](https://bashtage.github.io/linearmodels/panel/panel/linearmodels.panel.model.PanelOLS.html#linearmodels.panel.model.PanelOLS "linearmodels.panel.model.PanelOLS")固定效应,即面板数据中随个体变化但不随时间变化的一类变量方法。这在数学上等价于为每个观测包含一个虚拟变量,尽管出于性能原因,实际上并不是这样实现的。

* [`BetweenOLS`](https://bashtage.github.io/linearmodels/panel/panel/linearmodels.panel.model.BetweenOLS.html#linearmodels.panel.model.BetweenOLS "linearmodels.panel.model.BetweenOLS")平均数估计。即对面板数据的每个个体求平均数,然后利用自变量和因变量的N组观测值估计参数。

* [`FirstDifferenceOLS`](https://bashtage.github.io/linearmodels/panel/panel/linearmodels.panel.model.FirstDifferenceOLS.html#linearmodels.panel.model.FirstDifferenceOLS "linearmodels.panel.model.FirstDifferenceOLS")一阶差分估计。即对个体固定效应模型中的回归量与被回归量的差分变量构成的模型的参数进行OLS估计。

* [`RandomEffects`](https://bashtage.github.io/linearmodels/panel/panel/linearmodels.panel.model.RandomEffects.html#linearmodels.panel.model.RandomEffects "linearmodels.panel.model.RandomEffects")随机效应。当固定效应独立于回归变量时,RandomEffects 使用一个拟差分来有效地估计。 然而,当固定效应和回归变量之间存在依赖关系时,估计量就不再具有一致性。

* [`PooledOLS`](https://bashtage.github.io/linearmodels/panel/panel/linearmodels.panel.model.PooledOLS.html#linearmodels.panel.model.PooledOLS "linearmodels.panel.model.PooledOLS")混合最小二乘估计。Pooledols 忽略了固定效应,当效应与回归因子无关时,它是一致的但是低效的。

Panelols 比其他的估计方法更通用,可以用于两类效应的模型(例如,实体(即固定)和时间效应)

> 模型中的$\alpha_i$,与回归自变量相关,称之为固定效应模型;与回归自变量不相关,称之为随机效应模型。

>

> 固定效应将α消掉,随机效应则将其放入误差项,然后探索方差结构。

模型规范类似于 statsmodels。 下面例子估计了一个固定效应回归面板上的劳动者的工资,模型中劳动者的工资是经验平方的函数,如果一个男人结婚了虚拟变量设为1,如果这个男人是工会成员同样设定虚拟变量。

```python

from linearmodels.panel import PanelOLS

from linearmodels.datasets import wage_panel

import statsmodels.api as sm

data = wage_panel.load()

data = data.set_index(['nr','year'])

dependent = data.lwage

exog = sm.add_constant(data[['expersq','married','union']])

mod = PanelOLS(dependent, exog, entity_effects=True)

res = mod.fit(cov_type='unadjusted')

res

```

结果:

```python

PanelOLS Estimation Summary

================================================================================

Dep. Variable: lwage R-squared: 0.1365

Estimator: PanelOLS R-squared (Between): -0.0674

No. Observations: 4360 R-squared (Within): 0.1365

Date: Wed, Jun 24 2020 R-squared (Overall): 0.0270

Time: 23:03:18 Log-likelihood -1439.0

Cov. Estimator: Unadjusted

F-statistic: 200.87

Entities: 545 P-value 0.0000

Avg Obs: 8.0000 Distribution: F(3,3812)

Min Obs: 8.0000

Max Obs: 8.0000 F-statistic (robust): 200.87

P-value 0.0000

Time periods: 8 Distribution: F(3,3812)

Avg Obs: 545.00

Min Obs: 545.00

Max Obs: 545.00

Parameter Estimates

===========

  • 0
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值