如何利用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) 

你可能感兴趣的:(如何利用stata 补充数据缺失值方法)