2.模型回归
(1)首先,生成水平变量。在stata里面生成水平识别变量的命令如下:
nlogitgen newvar = alvar(branchlist) [, nolog]
解释:newvar为生成新变量的名称,alvar表示被分类的变量名称,branchlist表示各水平都包含怎样的取值,nolog表示窗口不显示生成的水平识别变量结果。
branchlist的形式为:branch [, branch]
branch的形式为: [label:] alternative [| alternative [ | alternative......]]
(2)在设置了水平变量之后,可以显示树状结构
nlogtitree altervarlist [if] [in] [weight] [, choice(y) nolabel nobranches]
顾名思义,nlogittree表示显示树状结构,altervarlist为各层次变量的名称,但一定是底层变量名称在前面然后依次向后;if和in 表示显示的条件和范围,weight表示对观测值加入的权重;choice(y)表示先是被解释变量在各个水平下出现的频数。nolabel和nobranches是对显示出图形形式的要求。
(3)嵌套logit模型的回归
语法格式:
nlogit y x1 x2...[if] [in] [weight] [||lev1_equation [||lev2_equation...] ] ||
altvar : [byaltvarlist] case(varname), [options]
if 、in 条件,范围; weight 权重, case(varname)表示个体识别变量。
levn_equation形式如下: altvar: [byaltvarlist] [,base(#|label) estconst].
altvar为每个水平上决策者选择的识别变量。
byaltvarlist设定不同水平上的解释变量。在一个水平上,每一个解释变量都有n个回归系数,n为类别个数,即每一个选择都有一个回归系数。如果变量为常数,基础选择的回归系数是不能识别的。通过base()选项设定每个水平的基础类别,默认选项为频数最高的类别。
estconst除了底层水平之外的某一个水平。作用:在设定的水平上,除了基础的类别外,其他选择都带有常数项。由于只能在一个水平上存在常数项,stata默认是地层水平带有常数项(除了基础类别)。如果设定了这个选项,那么地层水平必须通过noconstant选项设定不能含常数项。
(4)预测
预测的命令格式:
predict [type] newvar [if] [in] [, statistics hlevel (#) altwise]
predict [type] {stub* | newvarlist} [if ] [in] , scores
第一个命令:type表示预测出这个新变量newvar的类型,hlevel(#)表示在水平#上的预测概率,altwise表示当存在缺失值时候,根据预测的替代选择删除观测值。
第二个命令:预测每一个水平的概率。这个命令里面,type表示预测设定新变量的类型,{stub* | newvarlist}表示预测的新变量名称,score表示对数似然函数对每一个方程的一阶导数。
选项 | 说明 |
pr | 概率预测 |
xb | 指数预测 |
condp | 条件预测 |
iv | 计算hlevel(#) 设定水平的包含值,区别于工具变量的“iv” |
总结:
生成水平识别变量:
nlogiten newvar = altvar(branchlist)
显示树状结构:
nlogittree altervarlist [,choice(y)]
嵌套模型估计:
nlogit y [x1 x2...] [|| lev1_equation [||lev2_equation...]] ||
altvar: [byaltvarlist] case (varname)
预测地层水平的各个选择的概率:
predict pr
预测每个水平的概率:
predict p* , pr