You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改PROC PLM中EffectPlot的目标事件概率展示?

解决方法

问题根源是你在PROC GEE里加了DESCENDING选项,这个选项会强制把变量排序靠后的类别(这里"Nej"字母顺序在"Ja"之后)设为事件类别,直接覆盖了MODEL语句里event='Ja'的设置,导致后续绘图展示的是"Nej"的概率。

你可以按以下两种方式修改:

方式一:移除DESCENDING选项(推荐)

直接删掉PROC GEE语句里的DESCENDING,保留MODEL中的event='Ja',这样模型会正确以"Ja"为事件类别估计概率,PLM绘图也会同步展示"Ja"的概率:

proc gee data=longdata plot=all;
class kod enkat(ref="Bas") haft_basvar_hand_handled;
model haft_basvar_hand_handled(event='Ja')=enkat jamar_hoger enkat*jamar_hoger/dist=binary;
repeated subject=kod;
store out=jamarhand;
run;
title;
quit;
proc plm restore=jamarhand;
effectplot slicefit (x=jamar_hoger sliceby=enkat) / clm;
run;

方式二:在PLM中明确指定响应类别

如果不想改动GEE的设置,也可以在PROC PLM的effectplot语句里加上response='Ja'参数,强制指定展示"Ja"的概率:

proc gee data=longdata plot=all DESCENDING;
class kod enkat(ref="Bas") haft_basvar_hand_handled;
model haft_basvar_hand_handled(event='Ja')=enkat jamar_hoger enkat*jamar_hoger/dist=binary;
repeated subject=kod;
store out=jamarhand;
run;
title;
quit;
proc plm restore=jamarhand;
effectplot slicefit (x=jamar_hoger sliceby=enkat) / clm response='Ja';
run;

说明

  • 字符型变量默认按字母顺序排序,"Ja"在"Nej"之前,DESCENDING会反转这个顺序,把后出现的"Nej"设为事件,和你指定的event='Ja'冲突,所以移除它是最直接的解决办法。
  • 第二种方式通过PLM的response参数直接指定要展示的类别,即使GEE里有冲突设置,也能强制输出目标概率。

内容的提问来源于stack exchange,提问作者Tobias Nordqvist

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 15:42:09