如何利用stata 补充数据缺失值方法
2020-12-18 本文已影响0人
松柏林stata
导入数据
input str20 省份 year 关系指数
上海 2000 6674
上海 2002 6378
上海 2004 4415
上海 2006 4286
上海 2008 4385
上海 2010 4034
云南 2000 7473
云南 2002 7783
云南 2004 5968
云南 2006 8393
云南 2008 7479
云南 2010 7256
end
把数据补齐成2000-2010年而没有年份间隔,并且把缺失值2001、2003年等等的数据利用相邻两年的均来补充。例如,上海2001的关系指数=(6674+6378)/2
encode 省份,gen(id) //把字符型生成新的数字型变量
xtset id year // 定义面板
tsfill //利用 tsfill 生成连续的时间序列
bysort id: replace 关系指数=(关系指数[_n-1]+关系指数[_n+1])/2 if mod(year,2) //mod(year,2) 表示year除以2有余数
bysort id: replace 省份=省份[1] if mod(year,2)