当我在SAS中运行proc glimmix时,有时它会丢弃观察结果。 如何获取已删除/排除的观察值集或可能包含的观察集以便我可以识别丢弃的集合?
我目前的Proc GLIMMX代码如下 -
import org.apache.spark.sql.SparkSession trait SparkSessionWrapper { lazy val spark: SparkSession = { SparkSession .builder() .master("local") .appName("avro_test") .getOrCreate() } }
%LET EST=inputf.aarefestimates;
提前谢谢!
答案 0 :(得分:0)
它会删除您在模型中,CLASS,BY,MODEL,RANDOM语句中使用的任何变量中缺少值的记录。因此,您可以检查这些变量中是否缺少,以查看您获得的内容。通常,输出数据集也会通过不对未使用的记录进行预测来指示这一点。
您可以运行以下代码。
*create fake data;
data heart;set sashelp.heart; ;run;
*Logistic Regression model, ageCHDdiag is missing ;
proc logistic data=heart;
class sex / param=ref;
model status(event='Dead') = ageCHDdiag height weight diastolic;
*generate output data;
output out=want p=pred;
run;
*explicitly flag records as included;
data included;
set want;
if missing(pred) then include='N'; else include='Y';
run;
*check that Y equals total obs included above;
proc freq data=included;
table include;
run;
输出将显示:
The LOGISTIC Procedure
Model Information
Data Set WORK.HEART
Response Variable Status
Number of Response Levels 2
Model binary logit
Optimization Technique Fisher's scoring
Number of Observations Read 5209
Number of Observations Used 1446
然后PROC FREQ将显示:
The FREQ Procedure
Cumulative Cumulative
include Frequency Percent Frequency Percent
ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
N 3763 72.24 3763 72.24
Y 1446 27.76 5209 100.00
两个数据集中都包含1,446条记录。
答案 1 :(得分:0)
我想我回答了我的问题。 代码行 - OUTPUT OUT = inputf.aar 给出模型的输出。该表包括proc语句中使用的所有观察结果。因此,我可以将此表中的数据与输入表进行匹配,并找到丢弃的观察结果。
@REEZA - 我已经查找了数据中所有列的缺失值。通过仅识别否,无法识别丢失的记录。具有缺失值的记录。 (还是)感谢你的建议。