缺失值处理

Reads: 2131 Edit

在进行数据分析时,经常会遇到数据缺失的问题。一般有两种数据缺失值类型,第一类是样本位置本身存在数据,但是数据收集过程中没有收集到;第二类是在连续的时间样本中,由于放假等原因,某时间点上本身就无数据。

一般情况下,如果缺失数据不多,可以不做处理,在进行建模时EViews会自动将缺失值样本删除。

有些情况下,如果对缺失值比较了解,可以对缺失值进行补充。但由于缺失值的位置、缺失值前后值得位置关系等存在较大的不确定性,很难有统一的补充缺失值的方法。这里仅解释两种最简单的处理缺失值的方法。

1 新建工作文件

在EViews主窗口中选中file/new/workfile

168

在Workfile Create窗口的Workfile structrue type中选择Dated-regular frequency;在Data specification的Frequency中选择Daily-5 day week;在Start date中输入2020/01/01,在End date中输入2020/12/31

shibor数据是2020年全年的日度数据,且周六周日shibor市场休市,所以选择Daily-5 day week

169

除了上面的日度数据设置方式,也可以在Workfile Create窗口的Start date中输入2020:01,在End date中输入2020:262

262是2020年排除周六周日后剩余的天数,需要自己换算

170

2 导入数据

在EViews主窗口选择File/Import/Import from file

171

选择shibor的数据文件;

在Excel Read...窗口的Cell Range中选择Custom range;

在End cell中输入$B$250,设置需要导入的数据范围。

172

在Excel Read...窗口中选择shibor数据预览列,并在Name中输入变量的英文名称。日期数据主要是为了导入EViews中时自动和EViews中设置的日期进行匹配,所以日期数据的变量不用输入英文名。

173

点击提示框的No,完成数据导入。

174

3 处理缺失值问题

数据导入成功后,在工作窗口双击shibor打开,发现其中有一些缺失值!

EViews中设置的时间是排除周六周日后的时间,但现实中shibor市场除了周六周日休市外,国庆、五一等节日也会休市,所以产生了缺失值。

但应该注意到,shibor市场休市时,本来就没有shibor利率的交易,所以本身就无数据,而不是没有统计造成的缺失值

175

3.1 缺失值的第一种处理方法:直接删除

休市时shibor本身无数据,所以可以修改样本的时间范围,直接把休市的日期去除!

在工作文件窗口,点击Sample

176

在Sample窗口的IF condition中输入@isna(shibor)<>1

@isna()是判断变量某个值是否为缺失值,如果是则返回1;否则返回0;由于这里是想删除缺失值,保留非缺失值,所以通过"<>1"来保留不是缺失值的样本范围。

177

回到工作文件中,上面的Range是所有的数据量262个,Sample的样本量变为237个;

再次双击打开shibor变量,点击右上角的Sample+/-,可以切换显示/不显示缺失值。

178

3.2 缺失值的第二种处理方法:插值法

在EViews主窗口依次选择Quick/Generate Series

179

在Generate Series by Equation窗口的Enter equation中输入newshibor=@nan(shibor,@mean(shibor));生成新变量newshibor,其中用shibor的非缺失值来填充,而shibor的缺失值用shibor的平均数来填充。

180

在工作文件中双击打开newshibor变量,发现缺失值用shibor的平均值1.6096来代替!

181



获取案例数据,请关注微信公众号并回复:Eviews_dt3


Comments

Make a comment