Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
根据SAS中的因果关系标准排除回归中的变量_Sas_Regression - Fatal编程技术网

根据SAS中的因果关系标准排除回归中的变量

根据SAS中的因果关系标准排除回归中的变量,sas,regression,Sas,Regression,我已经尽了最大努力在网上搜索我的问题的答案,但是没有找到任何答案。也许我问得不对,也许我的问题无法解决。。。好吧,什么都没有 在SAS中运行回归时,可以进行向后或向前选择,从而消除所有不重要的变量,这很好,但仅仅因为变量的p值是≤ 0.05,这并不一定意味着结果是正确的 例如,,我在SAS中进行回归分析,因变量是因病死亡人数,自变量是医生人数。结果与p≤ 0.05,但该系数表示,随着医生人数的增加,死亡人数也会增加。这可能是虚假回归的结果,但因果关系是错误的,但SAS只是一台计算机,不知道因果关

我已经尽了最大努力在网上搜索我的问题的答案,但是没有找到任何答案。也许我问得不对,也许我的问题无法解决。。。好吧,什么都没有

在SAS中运行回归时,可以进行向后或向前选择,从而消除所有不重要的变量,这很好,但仅仅因为变量的p值是≤ 0.05,这并不一定意味着结果是正确的

例如,,我在SAS中进行回归分析,因变量是因病死亡人数,自变量是医生人数。结果与p≤ 0.05,但该系数表示,随着医生人数的增加,死亡人数也会增加。这可能是虚假回归的结果,但因果关系是错误的,但SAS只是一台计算机,不知道因果关系会走向何方。(当然,这也可能是真的,更多的医生=更多的死亡是由其他因素造成的,但让我们暂时忽略这一点)

我的问题是:是否可以进行回归,然后告诉SAS,它必须进行向后/向前消除,但根据我设置的一些规则,它还必须排除不符合这些规则的变量?例如,如果死亡人数增加,随着医生人数的增加,是否排除可变的医生人数?那会是什么

我真的希望,有人能帮助我,因为我正在用50多个变量进行不同年份的回归,如果我不必亲自检查所有结果,那就太好了


谢谢:)

我认为这是不可能的,也不推荐这样做。如前所述,SAS是一台计算机,无法知道哪些回归结果是虚假的。如果更多的医生=更多的医疗程序=更多的死亡怎么办?显然,您需要对每种情况应用专家意见,但上述情况也同样合理

你还提到了“文档份额”,如果我说的没错,这不是实际的数字?因此,它也可能是如何计算该度量的人工制品


如果您有一组特定的规则要排除,这可能是可能的。但你必须首先定义所有这些规则,并对它们有一定程度的确定性

我认为这是不可能或不推荐的。如前所述,SAS是一台计算机,无法知道哪些回归结果是虚假的。如果更多的医生=更多的医疗程序=更多的死亡怎么办?显然,您需要对每种情况应用专家意见,但上述情况也同样合理

你还提到了“文档份额”,如果我说的没错,这不是实际的数字?因此,它也可能是如何计算该度量的人工制品


如果您有一组特定的规则要排除,这可能是可能的。但你必须首先定义所有这些规则,并对它们有一定程度的确定性

如果您需要指定不寻常的参数选择标准,您可以使用蛮力进行自己的机器学习:对数据进行分区,在宏循环中的所有分区上运行不同的回归模型,并使用类似于
AIC
的方法来选择最佳模型

然而,除非你是一名机器学习专家,否则最好从
proc glmselect
开始

SAS可以在
glmselect
过程中进行正向选择和反向消除,例如:

proc gmlselect data=...;
 model ... / select=forward;
 ...

也可以将这两种方法结合起来,即在宏循环中运行多个
proc glmselect
迭代,每个迭代具有不同的模型规格,然后选择最佳结果。

如果您需要指定不寻常的参数选择标准,您可以使用蛮力进行自己的机器学习:对数据进行分区,在宏循环中的所有分区上运行不同的回归模型,并使用类似于
AIC
的方法选择最佳模型

然而,除非你是一名机器学习专家,否则最好从
proc glmselect
开始

SAS可以在
glmselect
过程中进行正向选择和反向消除,例如:

proc gmlselect data=...;
 model ... / select=forward;
 ...

也可以将这两种方法结合起来,即在宏循环中运行几次
proc glmselect
,每次都有不同的模型规格,然后选择最佳结果。

你说得对。我的问题不够清楚。我想制定一些规则,但我不知道怎么做。我会纠正我的问题,谢谢:)我认为没有一个统计上有效的方法来做你的建议。你是对的。我的问题不够清楚。我想制定一些规则,但我不知道怎么做。我会纠正我的问题,谢谢:)我不认为有一个统计上有效的方法来实现你的建议。有可能扩充SAS来构建一个应用额外规则的系统。即p 100,但p<0.04,当变量为#时,可以增加SAS以构建应用附加规则的系统。即p 100,但当变量为#时,p<0.04