R中使用多项式函数的多项式回归

Kob*_*oba 8 r probability multinomial logistic-regression

我正考虑在Cross-Validated中发布我的问题,但决定来这里.我正在使用nnet软件包中的multinom()函数来估计因年龄和受教育程度而变得就业,失业或失业的可能性.我需要一些帮助解释.

我有一个依赖的分类变量就业状态(EmpSt)和两个独立的分类变量的以下数据集:年龄(年龄)和教育水平(教育).

>head(df)
               EmpSt   Age                         Education
1           Employed   61+   Less than a high school diploma
2           Employed 50-60 High school graduates, no college
3 Not in labor force 50-60   Less than a high school diploma
4           Employed 30-39       Bachelor's degree or higher
5           Employed 20-29  Some college or associate degree
6           Employed 20-29  Some college or associate degree
Run Code Online (Sandbox Code Playgroud)

以下是级别的摘要:

>summary(df)
                EmpSt          Age                                    Education    
 Not in universe   :    0   16-19: 6530   Less than a high school diploma  :14686  
 Employed          :61478   20-29:16031   High school graduates, no college:30716  
 Unemployed        : 3940   30-39:16520   Some college or associate degree :28525  
 Not in labor force:38508   40-49:17403   Bachelor's degree or higher      :29999  
                            50-60:20779                                            
                            61+  :26663                                    
Run Code Online (Sandbox Code Playgroud)
  • 首先,什么是估算方程(模型)

我想确定调用的估计方程(模型)是什么

df$EmpSt<-relevel(df$EmpSt,ref="Employed") multinom(EmpSt ~ Age + Education,data=df)

所以我可以在我的研究论文中写下来.根据我的理解,Employed是基本级别,此调用的logit模型是:

在此输入图像描述 在此输入图像描述

其中i和n分别是变量年龄和教育的类别(对于令人困惑的表示法而言).如果我对multinom()产生的逻辑模型的理解不正确,请纠正我.我不打算包含测试的摘要,因为它有很多输出,所以下面我只包括调用的输出>test:

> test
Call:
multinom(formula = EmpSt ~ Age + Education, data = ml)

Coefficients:
                   (Intercept)   Age20-29   Age30-39   Age40-49   Age50-60     Age61+
Unemployed           -1.334734 -0.3395987 -0.7104361 -0.8848517 -0.9358338 -0.9319822
Not in labor force    1.180028 -1.2531405 -1.6711616 -1.6579095 -1.2579600  0.8197373
                   EducationHigh school graduates, no college EducationSome college or associate degree
Unemployed                                         -0.4255369                                 -0.781474
Not in labor force                                 -0.8125016                                 -1.004423
                   EducationBachelor's degree or higher
Unemployed                                    -1.351119
Not in labor force                            -1.580418

Residual Deviance: 137662.6 
AIC: 137698.6 
Run Code Online (Sandbox Code Playgroud)

鉴于我对multinom()生成的logit模型的理解是正确的,系数是基础级别为Employed的记录几率.为了获得实际的赔率我通过电话exp(coef(test))给出了真正的赔率:

> exp(coef(test))
                   (Intercept)  Age20-29  Age30-39  Age40-49  Age50-60    Age61+
Unemployed           0.2632281 0.7120560 0.4914298 0.4127754 0.3922587 0.3937724
Not in labor force   3.2544655 0.2856064 0.1880285 0.1905369 0.2842333 2.2699035
                   EducationHigh school graduates, no college EducationSome college or associate degree
Unemployed                                          0.6534189                                 0.4577308
Not in labor force                                  0.4437466                                 0.3662560
                   EducationBachelor's degree or higher
Unemployed                                    0.2589504
Not in labor force                            0.2058891
Run Code Online (Sandbox Code Playgroud)

这让我想到了下一个问题.

  • 第二,概率

我想知道是否有办法根据年龄和教育的结合来获得失业与就业的实际概率,例如,如果我22岁并且拥有高中毕业证书,那么失业的可能性是多少.抱歉这个冗长的问题.谢谢你的帮助.如果需要进一步说明,请与我们联系.

Pip*_*ppo 5

关于你的第一个问题,我对multinom分类变量也有一些疑问(这是我的问题:Multinom与计数矩阵作为响应).

根据用户在该问题中回答的内容以及>test您发布的输出,我猜您编写的数学部分是正确的:实际上,只有当预测变量是连续的或二分的时(即,值仅为0或者),多项模型才有效1),似乎当multinom将分类变量作为预测变量时,如在您的示例中,R自动将它们转换为虚拟变量(仅0或1).

参考你的例子,只考虑Age预测器,我们应该有ln(\frac{Pr(unemployed)}{Pr(employed}) = \beta_0 + \beta_1*Age20-29 + \beta_2*Age30-39 + ...一个类似的公式Pr(not in labor force),但具有不同的\beta系数.

关于你的第二个问题:是的,有办法.使用predict(test, newdata, "probs"),where newdata是一个带有Age20-29High school graduates, no college作为条目的数组(给出你的例子).

  • 再次关于拟合函数:例如在提供的链接中,在头部之后(pp < - 拟合(测试)),每行对应于原始数据的预测变量的行,并且三个值中的每一个都是具有的概率.其中一个"prog"类别.从logit概率R计算出单独的概率Pr(使用),Pr(失业)和Pr(劳动力),使用附加条件,即它们对于预测变量的每一行的总和是1(以及每行的总和)例子实际上是1). (2认同)