sas - 线性回归:使用 SAS 查找重要的类变量
问题描述
我正在尝试使用 SAS 来解决一个非常基本的回归问题,但我无法获得完整的结果集。
我使用的数据集包括教授的整体素质(因变量)并具有以下自变量:性别、numYears、胡椒、纪律、容易程度和 rateInterest。
我正在使用下面的代码来生成数据集的分析:
proc glm data=WORK.IMPORT;
class gender pepper discipline;
model quality = gender numYears pepper discipline easiness raterInterest;
run;
我得到了以下结果,这主要是我需要的,除了我想确切地了解类变量(性别、胡椒、纪律)的哪些响应是重要的。
从这些结果中,我可以看出轻松、利率、胡椒和纪律是显着的;但是,我想看看胡椒和纪律的哪些具体价值是重要的。例如,辣椒被学生回答为“是”或“否”。我想看看质量是否与胡椒或胡椒特别相关。谁能给我一些关于如何更改我的代码以返回类变量细分的建议?
这里也是数据集的链接,以防需要参考: https: //drive.google.com/file/d/1Kc9cb_n-l7qwWRNfzXtZi5OsiY-gsYZC/view?usp= sharing Rateprof
我真的非常感谢任何帮助!
解决方案
在您的语句中添加solution
选项以model
分解每个类变量的统计信息;但是,参考参数化在 中不可用proc glm
,并且会导致有偏差的估计。有一些方法可以继续使用proc glm
,但最简单的解决方案是proc glmselect
改用。proc glmselect
允许您指定参考参数化。使用该selection=none
选项禁用变量选择。
proc glmselect data=WORK.IMPORT;
class gender(ref='female') pepper discipline / param=reference;
model quality = gender numYears pepper discipline easiness raterInterest / selection=none;
run;
对此的解释是:
所有其他变量保持不变,与男性相比,女性对质量评级的影响为 -0.046782 个单位。这个变量在统计上不显着。
每个等级的细分是与参考值的比较。默认情况下,选择的参考值是所有类值内部排序后的最后一级。ref=
您可以使用每个类变量后的选项指定引用。例如,如果您想使用女性而不是男性作为参考值:
proc glmselect data=WORK.IMPORT;
class gender(ref='female') pepper discipline;
model quality = gender numYears pepper discipline easiness raterInterest / selection=none;
run;
请注意,您也可以使用prox mixed
. 对于此特定目的,偏好取决于您喜欢的输出样式。proc mixed
是一种运行回归的更灵活的方式,但在这里会有点矫枉过正。
proc mixed data=import;
class gender pepper discipline;
model quality = gender numYears pepper discipline easiness raterInterest / solution;
run;
推荐阅读
- c# - 如何通过 VSTS 部署流分析作业?
- guzzle - 未定义的偏移量:0 与 LARAVEL 5.6 和 GuzzleHttp POST 请求
- python-3.x - 如何使用 Nuitka 编译具有请求模块的 .py 脚本?
- regex - Powershell重命名文件不起作用 - 没有错误
- python - Python List 附加相应的索引
- firebase - 安全简报的基本 Firebase 表单
- android - 约束布局问题
- cookies - .NET Core 控制台应用程序 JWT 身份验证
- java - 检索放入 HashMap 的数组
- python-3.x - 从交互表中在 python 中创建大型矩阵的有效方法