傲世皇朝平台

傲世皇朝娱乐主管68115

发表日期:2018-12-27 18:42 【返回】

  傲世皇朝娱乐主管68115 第九章 stata与离散被解释变量模型 傲世皇朝娱乐主管68115 主要内容 ? 1-二值选择模型 ? 2-多值选择模型 ? 3-排序数据模型 ? 4-条件logit模型 ? 5-嵌套logit模型 实验9-1:二值选择模型 ? 一 实验基本原理 ? 二 实验内容和数据来源 ? 根据某统计资料,得到美国妇女就业的数据统计 集,形成数据文件“womenwork.dta”,用来研究 影响美国妇女就业的因素。被解释变量是work (就业work=1,不就业work=0),解释变量是 age(年龄),married(婚否),children(子女 数),education(教育年限)。完整的数据在本 书附带光盘里的data文件夹的“womenwork.dta” 工作文件中。 ? 利用以上数据,建立合适模型对就业的影响因素 进行计量分析,由于被解释变量取值有两个可以 建立二值选择模型来分析问题。 ? 三 实验操作指导 ? ? ? ? ? 1.建立logit模型分析 (1)使用logit模型回归 Stata中使用logit模型回归的命令语句格式如下: logit y x1 x2 … [if] [in] [weight] [,options] 该命令中logit表示使用logit模型进行回归,相应y表示模型的被解释 变量,x表示模型的解释变量,if表示logit的回归条件,in表示回归的 范围,weight表示给观测值的加入权重,options的内容如下表所示: ? ? ? ? ? 本实验中,在Stata命令窗口中输入如下命令。 use womenwork, clear 输入此命令来打开需要的数据文件。 logit work age education married children 输入此命令对被解释变量为work,解释变量为age、education、 married、傲世皇朝平台children的模型使用logit模型进行回归估计。 ? 在这个回归结果图中log likelihood即对数似然值,不断的试错迭代是 logit模型的估计方法,在逐步进行回归时,通过比较不同模型的-2LL 判断模型的拟合优度,选择取值更小的模型。LR chi2(4)是卡方检验 的统计量,也就是回归模型无效假设所对应的似然比检验量;其中4 为自由度,Probchi2 是其对应的P值,在这个估计结果显示以p=0 显著说明模型的有效性。其实这两个指标与线性回归结果中F统计量 和P值的功能是大体一致的。另外结果中的Pseudo R2是准R2,虽然 不等于R2,但可以用来检验模型对变量的解释力,因为二值选择模型 是非线性模型,无法进行平方和分解,所以没有,但是准衡量的是对 数似然函数的实际增加值占最大可能增加值的比重,所以也可以很好 的衡量模型的拟合准确度。此logit模型中拟合优度为0.1882。 ? coef是自变量对应的系数估计值,OLS通过t检验来检验估计量是否 显著,logit模型通过z检验来判断其显著性;通过z检验结果可以看到 此模型中系数均以p=0显著不为0。 ? (2)由于估计系数不像线性模型能够表示解释变量的边 际效应,所以Stata中有额外的命令语句来计算解释变量 的边际效应: ? mfx [compute] [if] [in] [,options] ? 此命令语句中mfx表示对回归之后的模型计算解释变量的 边际效应,其中options内容如下表所示: ? 本实验中,在进行logit模型回归估计后,在Stata 命令窗口中输入如下命令: ? mfx ? 此命令计算模型回归之后,解释变量取值在样本 均值处的边际效应。 ? 此输出结果显示了每一个解释变量的平均边际影 响,另外读者可以自己设定计算在边际影响的点, 其原理就是命令语句options中的at(atlist)将其具 体化,例如“mfx, at (x1=0)”表示计算x1取值为0, 其他解释变量取值在样本均值处的边际效应;而 “mfx”默认是在所有解释变量在样本平均值处的 边际效应。 ? (3)计算模型预测的百分比来计算模型的 拟合优度。 ? 如果要检验这个分类的依据或者要获得每个预测值,可以 利用此二值模型进行预测分析,Stata中二值选择模型的 预测的命令语句如下所示: ? predict [type] newvar [if] [in] [,single_options] ? 其中predict是表示对模型进行预测的命令;newvar表示 预测新变量的名称,type可以表明设定新变量的类型;if 和in表示对此预测设定的条件和范围;single_options的 内容以下表所示: ? 本实验中,在Stata命令窗口中输入如下预测命令,可以 得到预测结果图: ? predict p1, pr ? 此命令可以获得此模型的个体估计的值并记为新变量p1 ? list work p1 ? 此命令可以将实际值与估计值对应罗列,对比看到预测值 和实际值的一致程度。 ? (1)ROC曲线-特异性)的散点图, 即预测值等于1的准确率与错误率的散点图。Stata中绘画 该ROC曲线命令语句为: ? lroc [x] [if] [in] [weight] [,options] ? 其中lroc表示绘图ROC曲线命令,if和in表示对绘制图时 的条件和范围的设定,weight表示对观测值的权重设定, 另外命令中的自变量x不能单独使用,必须与options中 beta(matname)同时使用,而options的内容如下表所示: ? 本实验中,在以上工作后,在命令窗口中 输入如下命令绘制ROC曲线图 ? lroc ? 因为准确率就是曲线下面的面积,读此图 可以看到ROC曲线度直线上面, 所以准确率高于错误率,即准确率大于0.5。 此图曲线,就是预测的准 确率是0.7806。 ? (2)goodness-of-fit拟合优度检验 ? 此检验是考察该模型对所用数据的拟合优度,在Stata中 命令语句为: ? estat gof [if] [in] [weight] [,group(#) all outsample table] ? 其中,if和in表示对检测拟合优度时的条件和范围的设定, weight表示对观测值的权重设定,group(#)表示使用合 理的#分位数进行检验;all表示对所有观测值进行检验, 若无后面可选项则默认就是all;outsample表示对估计区间 外的样本调整自由度,table表示各组列表。 ? 本实验中在Stata命令窗口输入如下命令检验此模型的拟 合优度,然后可以得到检验结果: ? estat gof ? 读此图的方法是P值越大,说明模型的拟合优度越好。 ? 2.建立probit模型分析 ? 前面是使用logit模型对womenwork.dta进行分析, 现在使用probit模型对此问题进行分析。两种方 法在Stata中的操作是很一致的。 ? 在Stata命令窗口中输入如下命令: ? use womenwork, clear ? 使用此命令打开所需要文件。 ? probit work age education married children ? 此命令表示使用probit模型进行回归。 ? ? 此图的解读方法与Logit模型结果图是完全一样的, probit模型估计结果显示系数估计值相比logit估计 值发生了很大变化,且均显著通过了模型系数的 显著性检验;另外模型的准R2是0.1889,相比 logit模型稍有改进。 ? 由于logit与probit模型得出的参数估计值不可直接 比较,根据本节开始介绍的原理已了解到两模型 的边际效应可以比较。Stata中probit模型的边际 效应得出方法与logit是相同的。 ? 在Stata命令窗口中输入如下命令计算probit模型 回归后解释变量在样本均值处的边际效应: ? mfx ? 可以看到与前面的logit模型比较,两模型分析的 边际效应是大致相同的。然后来计算probit模型 的拟合优度,具体操作方法也与logit模型是一致 的。 ? 计算准确预测百分比,Stata命令窗口输入如下命令: ? estat clas ? 此图的解读方法与上面logit模型得到的是完全一样的,显 然可以得到:sensitivity(敏感性)=87.64% ,specificity (特异性)=45.05%,correctly classified(正确预测百 分比)=73.65%。可以看到,这个结果与logit模型是完全 一致的。 ? 另外为了检验这个结果,可以同样输入如下命令: ? predict p2, pr ? 此命令可以获得此模型的个体估计的值并记为新变量p2 ? list work p2 ? 其次是使用ROC曲线来检测预测的准确度, 在Stata命令窗口中输入如下命令,可以得 到ROC曲线: ? lroc ? 此图的读法与logit的ROC图是一致的,由 于logit模型与probit模型的sensitivity与 specificity是相同的,那么ROC曲线一定是 相同的,且曲线。 ? 最后是godness-of-fit拟合优度检验,在 Stata命令窗口中输入如下命令: ? estat gof ? 3.二值选择模型的异方差问题 ? Stata中对probit二值选择模型进行异方差检验和 回归的命令语句如下: ? hetprob y x1 x2 …[if] [in] [weight] , het(varlist [offset(varname)]) [,options] ? 其中hetprob表示对模型进行异方差probit模型估 计和异方差检验,if和in表示对检测拟合优度时的 条件和范围的设定,weight表示对观测值的权重 设定,选择项 het(varilist)是影响扰动项的变量清 单,在该命令语句的输出结果里,会汇报LR检验 的结果,据此判断是否应该使用此异方差模型, options的内容如下表所示: ? 本实验中,在Stata命令窗口中输入如下命令进行 异方差模型估计和检验,可以得到图9.12的运行 结果: ? hetprob work age education married children, het (age education married children) ? 结果显示LR检验的结果是接受原假设,即模型不 存在异方差问题。所以回归不应使用异方差回归 模型,可以直接应用probit模型进行估计。 实验9-2:多值选择模型 ? 一 实验基本原理 ? 1.多值选择模型 ? 有时候人们面临的选择是多个的,比如交通选择,入读大 学的选择等等。假设个体可以选择的y=1,2,3,…,J ,其中J 是正整数。当研究的被解释变量是这样多值离散的,建立 的模型就是多值选择模型,而当J=2时,就是上节所说的 probit或者logit模型。 ? 若将上面的二值logit模型推广开来,可以得到, ? 二 实验内容和数据来源 ? 本实验来自某统计资料,统计在购物时所选品牌 与性别、年龄的关系。变量主要有brand(品 牌),female(性别),age(年龄)。完整的 数据在本书附带光盘data文件夹下“brand.dta” 中。 ? 本实验用此数据来以female和age为解释变量, brand为被解释变量,brand的取值是离散的,且 有三个取值,应建立多值选择模型进行相关分析。 ? 二实验操作指导 ? 1.选择合理模型 ? 在Stata中将数据按照某个或某几个变量进行分类 并按这个变量获得其频数分布的命令如下: ? tab varlist ? 其中varlist表示按照其分类的变量或者变量组合。 ? 在本实验中,打开数据文件并将数据按brand取 值分类,在Stata命令窗口中输入如下命令 ? use brand ,clear ? tab brand ? 读图可知brand取值有三个,分别是1,2,3。由 于所要探究的问题female和age对brand的影响, 且假定了选择各个品牌之间是相互独立的,那么 建立多值选择模型来分析问题是合理的。 ? 2.模型回归 ? 多值选择模型有logit和probit多值选择模型,Stata中使用多值logit和 probit模型的命令语句是: ? mlogit y x1 x2 … [if] [in] [weight] [,options] (multinomial logit 模型) ? mprobit y x1 x2 …[if] [in] [weight] [,options] (multinomial probit 模型) ? 此命令中if和in表示对检测拟合优度时的条件和范围的设定,weight 表示对观测值的权重设定,options的内容如下表所示: ? 经常使用的命令语句是“mlogit y x1 x2 …, base(#)”或者“mprobit y x1 x2 …,base(#)”, 其中#是指被解释变量的某个取值,其可以根据 需要变动此参照组。本实验中,由于logit模型与 probit模型操作相似,以多值logit为例进行操作。 ? 在Stata命令窗口中输入如下命: ? mlogit brand age female, base(1) ? 此命令表示以age和female为解释变量,brand为 被解释变量,以brand=1为参照组的多值logit模 型回归。 ? 根据前面原理部分的介绍,该题的多值logit模型 是由三个方程组成的。Stata回归结果图显示出了 j=2和j=3时对应的模型估计结果,自然由三种选 择概率之和为1可得到j=1时模型结果。 ? Stata中得出多值选择模型个体选择被解释变量每个取值的概率的命 令语句格式(1): ? predict [type] {stub*newvars} [if] [in] [,statistic outcome(#,#,…) nooffset] ? 该预测命令语句中,type表示预测设定新变量的类型, {stub*newvars}表示预测的新变量名称,if和in表示对检测拟合优度 时的条件和范围的设定,outcome表示需要对其指定的类别进行概率 预测。如果不设定outcome选项,则需设定k个新变量。如果是预测 指数或者指数的标准差,则需设定1个新变量。outcome()中, outcome可以直接用类别的取值,也可以用#1 #2等表示类别的序号, 当然也可用数值标签来表示。nooffset表示预测时的约束,statistic的 内容主要包括: ? 预测命令格式(2): ? predict [type] {stub*newvarlist} [if] [in], scores ? 此命令中type表示预测设定新变量的类型, {stub*newvarlist}表示预测的新变量名称,if和in 表示对检测拟合优度时的条件和范围的设定, score表示对数似然函数对每个方程的一阶导数, 第1、2、…、k个变量为对数似然函数对地1、2、 3、…、k个方程的一阶导数。 ? 在本实验中,在Stata命令窗口中输入如下命令语 句预测brand三个取值的概率然后列出如图9.15 的预测结果: ? predict p1 p2 p3 ? List ? 此图可以看出很多时候根据模型预测选择某个品 牌的概率最大,但是实际上此个体未选择此品牌, 就是预测失败了。若读整个个体选择的概率图, 会有一个很明显的结论,年轻的人倾向于选择 brand1(选择brand的概率较大),随着年龄增 加选择brand2和brand3的概率增加,年龄越大的 人倾向选择brand3。 实验9-3:排序数据模型 ? 一实验基本原理 ? 运用计量经济学建立多值选择模型去解释一个取 值离散的变量时,有时候这个变量的取值可能是 有顺序的,比如银行的信用评级,学生奖学金等 等,这些选择的取值代表了一定的优劣,即数字 是有顺序的。多值选择模型所能研究的问题是, 变量选择的取值之间是无序的,排序对其无意义 的。所以对于有序数据的探究应该用本节的排序 数据模型。 ? 二 实验内容和数据 ? 根据GSS统计调查数据得到数据文件 ordwarm.dta,不同的家庭母子(女)之间的关 系是不同的,有的比较紧张,有的比较融洽。这 种关系在数据文件ordwarm.dta变量warm(关系 融洽度)中体现;文件中其他的变量educ=子女 接受教育的程度;age=子女年龄;male=儿子; prst=职业威望;white=白人;yr89=89年受调查 与否。完整的数据在本书附带光盘的data文件夹 下的“ordwarm.dta”。 ? 此数据文件中变量warm取值0,1,2,3表示融 洽度逐步上升;warm作为这个问题的被解释变 量其取值是离散不连续且是有顺序的,所以可以 建立一个排序数据模型分析不同因素对warm的 影响。 ? 二 实验操作指导 ? 1.选择合理模型 ? warm是模型的被解释变量,从数据文件中看到 其是一排序数据。在Stata命令窗口中输入如下命 令打开文件并观察数据和其变量特点: ? use ordwarm, clear ? tab warm ? 此命令表示按warm变量将数据分类且获得其频 数分布。 ? 可见所有数据都分在warm的4种取值类别中,由 于4种取值有顺序的,所以分析时应该使用排序 数据模型。 ? 2.模型回归 ? 排序选择模型分为排序logit模型和排序probit模型, 在Stata中命令语句分别为: ? oprobit y x1 x2 …[if] [in] [weight][,options] ? 此命令语句表示使用ordered probit 模型对y、x 进行回归,if和in表示回归的条件和范围,weight 表示观测值的权重,options内容如下表9.11所示。 ? ologit y x1 x2 …[if] [in] [weight][,options] ? 此命令语句表示使用ordered logit 模型对y,x进行 回归,if和in表示回归的条件和范围,weight表示 观测值的权重,options内容如下表。 ? 本实验Stata分别使用两种模型进行回归,在命令窗口中 输入如下命令: ? oprobit warm ed age male prst white yr89 ? 此命令表示解释变量为ed age male prst white yr89,被 解释变量是warm的排序probit模型回归。 ? 若使用排序ologit模型对此问题进行回归,则在命 令窗口中输入如下命令: ? ologit warm ed age male prst white yr89 ? 此命令表示解释变量为ed age male prst white yr89,被解释变量是warm的排序logit模型回归。 ? 此图分析与上图9.17一样的,同样给出了重要的 参数估计量包括模型系数估计值和三个临界点。 ? 利用多值选择模型同样可以预测样本个体选择warm每个 取值的概率,此模型在Stata中命令语句与多值选择模型 是一样的,所以其预测命令语句(1)仍为: ? predict [type] {stub*newvars} [if] [in] [,statistic outcome(#,#,…) nooffset] ? 该预测命令语句中,type表示预测设定新变量的类型, {stub*newvars}表示预测的新变量名称,if和in表示对检 测拟合优度时的条件和范围的设定,outcome表示需要对 其指定的类别进行概率预测。如果设定outcome选项,则 需设定k个新变量;否则只需设定1个新变量。如果是预 测指数或者指数的标准差,则需设定1个新变量。 outcome()中,outcome可以直接用类别的取值,也可 以用#1 #2等表示类别的序号,当然也可用数值标签来表 示。nooffset表示预测时的约束,statistic的内容主要包括: ? 预测命令格式(2): ? predict [type] {stub*newvarlist} [if] [in], scores ? 此命令中type表示预测设定新变量的类型, {stub*newvarlist}表示预测的新变量名称, if和in表示对检测拟合优度时的条件和范围 的设定,score表示对数似然函数对每个方 程的一阶导数,第1、2、…、k个变量为对 数似然函数对地1、2、3、…、k个方程的 一阶导数。 ? 本实验中预测样本个体选择warm每个取值的概 率时可以在Stata命令窗口中输入如下命令: ? predict p1 p2 p3 p4 ? list p1 p2 p3 p4 ? 图中p1 p2 p3 p4 分别代表warm的0、1、2、3四 个取值的概率。 ? 若要单独看符合某些条件的个体的warm取某个 值的概率,也可在Stata命令窗口输入如下命令: ? predict male_0 if (male==1&yr==89&white==1), pr outcome(0) ? 表示符合括号条件的个体,取warm=0时的概率。 读者可以根据自己分析问题需要来定义条件,然 后预测符合条件的被解释变量的取值。 实验9-4:条件logit模型 ? 一 实验基本原理 ? 前面分析人们在面临多个选择时,选择的依据是个体的特 点,比如考察人们购物选择的品牌时,模型考虑的是个体 的年龄和性别;但有时候个体选择受外部因素的影响很大, 即选择特征(备选方案的特征变量),比如某个品牌在这 个城市进驻的销售商数量等等,此时用多值logit模型,会 影响分析结果。本章介绍的条件logit模型可以解决解释变 量中存在选择特征的问题。 ? 根据条件概率定义多值选择logit模型可以改写为: ? 二 实验内容和数据来源 ? 本实验的数据来自某统计资料关于研究初生婴儿体重的影 响因素的统计数据,整个数据在本书附带的光盘中data文 件夹中“lowbirth.dta”中。 ? 数据中的变量有parid(个体识别变量),low(婴儿低体 重,若体重低则取值1,否则0),age(母亲的年龄), lowt(母亲最近一个月的体重),smoke(母亲怀孕期间是 否吸烟,若吸烟为1,否则为0),ptd(母亲以前有早产经 历,若有则1,反之为0),ht(母亲高血压,若是则取值1, 否则为0),ui(母亲是否子宫敏感,若是则取值1,否取值 0),race1(母亲是白种人,若是则取值1,反之0), race2(母亲是黑种人,若是取值1,反之0),race3 (母亲是其他色种人,若是取值1,反之取值0)。 ? 此实验中被解释变量是low,以上的解释变量均是婴儿妈妈 的因素,那么这些因素就是与选择特征变量,所以应该建 立条件logit模型进行回归。 ? 三、实验操作指导 ? 1.建立模型 ? 首先是观察变量的特点,发现解释变量是选择特 征变量;然后在Stata中输入如下命令打开数据文 件,观察变量特点: ? use lowbirth, clear ? tab low ? 此命令表示按warm变量将数据分类且获得其频 数分布。 ? 可见到所有数据都在两个类别中,且解释变量均 为选择特征变量,pairid是个体识别变量,所以 建立条件logit模型分析问题是合理的。 ? 2.模型回归 ? Stata中使用条件logit模型的回归命令语句如下所 示: ? clogit y x1 x2 …[if] [in] [weight] , group(varname) [options] ? 其中,clogit表示对y、x进行条件logit模型回归, if和in表示回归的条件和范围,weight表示观测值 的权重值,group设定个体识别变量,options内 容如下表所示: ? 本实验中,使用条件logit模型回归时,由于race1 race2 race3均做解释变量会产生完全的多重共 线性,这里的解决方法是:gen nonwhite = race2 + race3 ? 然后选取nonwhite与race1中一个加入模型,这 样模型得到的结果是白种人和非白种人对婴儿体 重的解释。 ? 所以在Stata中输入如下命令: ? clogit low lwt nonwhite smoke ptd, group(pairid) ? 此命令表示的是被解释变量是low,解释变量是 lwt nonwhite smoke ptd,个体识别变量是pairid 的条件logit模型回归。 ? 回归结果给出了模型的拟合优度和模型系数估计值,为了 保证参数的可识别性,Stata对参数进行了标准化,因此 不包含常数项。显然模型lowt与nonwhite估计系数的p值 未通过显著性检验。若是模型中引入的解释变量是race1 而不是nonwhite,则系数估计值会是现在估计值的相反数。 ? 在本实验中在Stata命令窗口中输入如下命令,就 可以看到此模型的机会比情况: ? clogit,or ? 结果与9.21图比较,可见odds Ratio等于上图中 系数估计值取自然指数的值。其意义是lowt每增 加1单位,婴儿体重重的概率相对轻的概率会增 加0.99236;nonwhite每增加1单位(即成为race1), 婴儿体重重概率相对轻的概率增加00.53024。 ? 利用条件选择模型同样可以预测样本个体选择每个取值的 概率,Stata中命令语句如下所示: ? predict [type] newvar [if] [in] [,statistic nooffset] ? 该预测命令语句中,type表示预测设定新变量的类型, newvars表示预测的新变量名称,if和in表示对检测拟合优 度时的条件和范围的设定,nooffset表示预测时的约束, statistic的内容主要包括: ? 本实验中,在Stata命令窗口中输入如下命令可得 到预测结果: ? predict p1 ? 此预测命令可以得到婴儿初生时体重较重的概率 ? list low p1 ? 将被解释变量与预测的概率罗列,可以看到预测 结果与实际结果的对比情况,即预测的准确度。 实验9-5:嵌套Logit模型 ? 一 实验基本原理 ? 多值选择模型和二值模型使用的一个重要的前提 就是被解释变量取值之间的无关独立性,这个前 提使它们在实际分析问题中使用受到很大限制。 有很多时候个体的选择是分层次的,下面层次的 选择受到上面层次的限制。比如个体外出旅游时, 首先选择去的地方,然后才能选择看的风景名胜。 比如下图所示的一个选择过程: 外出旅游 北京 上海 故宫 长城 香山 滨江 大道 外滩 黄浦 公园 ? 显然在选择最终选择的过程中,有两个层次。相同层次之 间的选择是具有替代性的,而层次之间的选择又是不相关 的;第一层决策为北京或者上海,这两个选择是相互替代 的,第一层的选择与第二层选择无关;第二层显然分为两 组,在每组内部的选择是不相关的,而组间具有相关性。 也就是将条件Logit模型中隐含的齐次方差性条件放松, 允许方差在组间可以不同,但在组内仍然是同方差的,这 样的模型被称为Nested Logit模型。 ? 二实验内容及数据来源 ? 根据某统计资料,得到考察家庭选择酒店的影响因素的数 据文件restaurant.dta。数据中变量包括:family_id(家 庭识别变量);restaurant(酒店);income(家庭收入); cost(每人的平均餐饮费用);kids(家庭小孩); rating(酒店星级);distance(家庭与酒店的距离); chosen(选择餐厅的识别变量)。完整的数据文件在本 书附带光盘下的data文件夹中的“restaurant.dta”数据文 件中。 ? 在本数据中人们的选择包含两个水平:类型和餐馆,就是 所人们先决定去什么类型的餐馆就餐,然后再根据各种因 素确定具体的餐馆。认为income,kids是个体特征变量决 定个体选择的第一水平—类型;cost,rating为选择变量 决定个体选择的第二水平—具体餐馆。所以应该使用嵌套 logit模型来分析此问题。 ? 三 实验操作指导 ? 1.选择合理的模型 ? 首先在Stata中输入如下命令,打开所需数 据文件: ? use restaurant, clear ? 观察变量的特点,餐厅选择有两个层次, 类型和餐馆。类型有三种fast family和 fancy,可以使用嵌套logit模型分析此问题。 ? ? ? ? ? ? ? ? ? 2.模型回归 (1)Stata中生成水平识别变量的命令语句如下所示: nlogitgen newvar = alvar(branchlist) [,nolog] 此命令语句中nlogitgen表示嵌套模型中生成水平识别变 量,newvar生成新变量的名称,alvar表示被分类的变量 名称,branchlist表示各水平包含的怎样的取值,nolog表 示窗口不显示生成的水平识别变量结果。 branchlist的形式为:branch [,branch …] branch 的形式为:[label:] alternative [ alternative [ alternative …]] 在本实验中,使用Stata生成水平识别变量时在Stata窗口 中输入如下命令可以得到图9.24所示的结果: nlogitgen type = restaurant (fast: Freebirds MamasPizza , family: CafeEccell LosNortenos WingsNmore, fancy: Christophers MadCows) 此命令生成此模型的第一水平变量fast,family和fancy。 ? (2)在设定了水平变量后,可以在Stata中输入 如下命令显示出其树状结构: ? nlogittree altervarlist [if] [in] [weight] [,choice(y) nloabel nobranches] ? nlogittree表示显示树状结构,altervarlist表示两 个层次的变量名称,但是一定是底层变量名称在 前面然后依次向后;if和in表示显示的条件和范围, weight表示对观测值加入的权重;choice(y)表 示显示被解释变量在各个水平下出现的频数, nloabel nobranches是对显示出图形形式的要求。 ? 在本实验中,在Stata命令窗口中输入如下命令: ? nlogittree restaurant type ,choice (chosen) ? 此命令表示显示二层选择变量是restaurant,一 层选择变量是type的树状结构。 ? (3)进行嵌套logit模型的回归: ? Stata中进行嵌套logit模型回归的命令语句如下所示: ? nlogit y x1 x2 … [if] [in] [weight] [ lev1_equation[lev2_equation…]] altar :[byaltvarlist] case (varname), [options] ? 其中nologit表示对y,x进行嵌套logit模型回归,if和in表示回归的条件 和范围,weight表示观测值加入的权重,case(varname)表示个体识 别变量。levk_equation的形式如下: ? altar:[byaltvarlist] [,base(#label) estconst] ? altvar 为每个水平上决策者选择的识别变量。 ? byaltvarlist设定不同水平上的解释变量。在一个水平上,每一个解释 变量都有k个回归系数,k为类别个数,即每一个选择都有一个回归系 数。如果变量为常数(比如反映决策者特征的个体特定变量),基础 选择的回归系数是不能识别的。通过base()选项设定每个水平的基础 类别,默认选项为频数最高的类别。 ? estconst 用于除了底层水平之外的某一个水平。其作用是在设定的水 平上,除了基础类别外,其他选择都带有常数项。由于只能在其中一 个水平上存在常熟项,Stata默认值是底层水平是带有常数项的(当 然除了基础类别)。即如果设定了这个选项,那么底层水平必须通过 noconstant选项设定不能含常数项。命令中options的内容如下表: ? 在本实验中,在Stata命令窗口中输入如下命令,可以得 到回归估计结果: ? nlogit chosen cost distance rating type: income kids, base(family) restaurant: , noconst case(family_id) ? 此命令表示一个一层水平是type且其解释变量是income kids,二层选择水平是restaurant,其解释变量是cost distance rating的嵌套回归模型。且要求在一层水平上的 基础类别是family,底层水平的估计不含有常数项。 ? 此回归图显示了嵌套回归模型是通过不断迭代最终找到最 大化的估计量。结果图给出了每个层次的回归的系数估计 值和显著性检验结果,可以用来分析问题。比如结果显示 收入(income)越高的人越倾向选择fancy这个就餐类型, 在第二水平的选择上,成本低距离近等级高的餐馆容易被 选择,但是rating这个变量的系数没有通过显著性检验。 ? ? ? ? ? 4)预测: 使用嵌套模型对其估计结果进行预测的Stata命令格式如下所示: predict [type] newvar [if] [in] [,statistics hlevel(#) altwise] predict [type] {stub* newvarlist} [if] [in] , scores 对于第一个命令,type表示预测出这个新变量newvar的类型,if和in 表示回归的条件和范围,hlevel(#) 表示在水平#上的预测概率, altwise表示当存在缺失值时,根据预测的替代选择删除观测值。 statistics所代表内容如下表所示。 ? 第二个命令可以是用来预测每一个水平的概率。此命令中type表示预 测设定新变量的类型,{stub*newvarlist}表示预测的新变量名称,if 和in表示对检测拟合优度时的条件和范围的设定,score表示对数似 然函数对每个方程的一阶导数,第1、2、…、傲世皇朝注册k个变量为对数似然函 数对地1、2、3、…、k个方程的一阶导数。 ? 在本实验中在回归后,在Stata命令窗口中输入如 下命令语句: ? predict pr ? 此命令可以用来预测底层水平的各个选择的概率。 ? list family_id restaurant pr ? 输入此命令显示个体识别变量,被解释变量和预 测概率结果。 ? 要预测每个水平的概率,可以在Stata中输入如下 命令: ? predict p*,pr ? list family_id restaurant type p* ? 从上图可以看出,显然p1表示的是第一水平的选择概率, p2表示的概念与pr是一致的。观察可以得到,p1表示的 是层次概率,且三个层次概率的和是1。而p2表示的是底 层选择概率,其所有底层选择的概率之和亦是1。当然如 果在list语句中加入chosen变量,就可以和前面几个实验 中一样来观察和计算模型对数据的拟合优度了。 ? 如果要在第一水平的基础上,计算第2水平的各个选择的 概率在Stata命令窗口中输入如下命令: ? predict condp,condp hlevel (2) ? 此命令就是预测模型选择的条件概率,就是既定第一水平 后,第二水平的选择概率。 ? 由于在既定第一水平下预测的条件概率,各水平之间的选 择是互不相关的,所以预测的条件概率是在每个第一水平 下其包含的最终选择的概率就是1。 习题 ? 1.使用data文件夹下的数据lbw2.dta,研究出生婴儿体重的 影响因素,以low(若婴儿体重小于2500克,low=0;若 大于2500克,low=1)为被解释变量,age,lwt, race2, race3,smoke, ptl, ht, ui为解释变量,使用logit模型探究解 释变量对被解释变量low的影响。图9.30列示了该文件部 分数据: ? 2.仍然运用brand.dta数据,改变实验9-2的 参照组重复多值选择回归,将得到的结果 与实验9-2的结果比较。 ? 3.使用本书附带光盘data文件夹中的统计美国健康险投保 情况的数据文件sysdsn3.dta,以insure(个体投保情况) 为被解释变量,以age(投保人年龄),male(投保人性 别),nonwhite(投保人人种),site2(投保人是否位 于地点2),site3(投保人是否位于地点3)为解释变量; 使用多值选择模型进行回归,然后对结果进行分析。该数 据文件的部分数据如下图9.31所示: ? 5.利用实验9-4中lowbirth.dta数据,使用稳健标准条件 logit模型重新回归,并与实验9-4比较结果差异。 ? 6.使用data文件夹下union.dta数据,以union为被解释变 量,age, grade, not_smsa为解释变量,使用条件logit模 型探究解释变量对union的解释作用。图9.33列示了该文 件部分数据: ? 7.对于实验9-5,利用数据restaurant.dta,若 约束每个水平的包含值相同(即条件logit 模型)重新进行估计,并比较结果差异。

快速导航

×