Hi,
Currently, the regression within a CAS action, does not start correctly for certain dependent variables. In these cases, the code is not properly read, and CAS does not actually perform the regression. The original dataset contains approximately 45 million observations. When a test sample of 10,000 observations from the original dataset is used, the CAS action is accepted, and the regression runs successfully. The code also works without issues for previous dependent variables from the same dataset. Structurally, the dependent variables differ in that, for the one that fails, the value 0.01 occurs very frequently (a Gamma regression is being conducted, which is why a small constant is added).
++++++++++++++++++++++++++++++
++++++++++++++++++++++++++++++ Table Structure
++++++++++++++++++++++++++++++
cas test1;
proc cas;
regression.genmod
table={name="regression_kosten_itt", caslib="cpmevalhzv", where="zeitpunkt < 6"},
class={
{vars={"beginn_hzv"}}, {vars={"jahr"}}, {vars={"gruppe"}, ref="0"}, {vars={"post"}, ref="0"}, {vars={"gruppe_post"}, ref="0"},
{vars={"FV"}, ref="0"}, {vars={"F"}, ref="0"},
{vars={"PG1"}, ref="0"}, {vars={"PG2"}, ref="0"}, {vars={"PG3"}, ref="0"}, {vars={"PG4"}, ref="0"}, {vars={"PG5"}, ref="0"},
{vars={"Elix_01"}, ref="0"}, {vars={"Elix_02"}, ref="0"}, {vars={"Elix_03"}, ref="0"}, {vars={"Elix_04"}, ref="0"}, {vars={"Elix_05"}, ref="0"},
{vars={"Elix_06"}, ref="0"}, {vars={"Elix_07"}, ref="0"}, {vars={"Elix_08"}, ref="0"}, {vars={"Elix_09"}, ref="0"}, {vars={"Elix_10"}, ref="0"},
{vars={"Elix_11"}, ref="0"}, {vars={"Elix_12"}, ref="0"}, {vars={"Elix_13"}, ref="0"}, {vars={"Elix_14"}, ref="0"}, {vars={"Elix_15"}, ref="0"},
{vars={"Elix_16"}, ref="0"}, {vars={"Elix_17"}, ref="0"}, {vars={"Elix_18"}, ref="0"}, {vars={"Elix_19"}, ref="0"}, {vars={"Elix_20"}, ref="0"},
{vars={"Elix_21"}, ref="0"}, {vars={"Elix_22"}, ref="0"}, {vars={"Elix_23"}, ref="0"}, {vars={"Elix_24"}, ref="0"}, {vars={"Elix_25"}, ref="0"},
{vars={"Elix_26"}, ref="0"}, {vars={"Elix_27"}, ref="0"}, {vars={"Elix_28"}, ref="0"}, {vars={"Elix_29"}, ref="0"}, {vars={"Elix_30"}, ref="0"},
{vars={"Elix_31"}, ref="0"}, {vars={"Elix_32"}, ref="0"}, {vars={"Elix_33"}, ref="0"}, {vars={"Elix_34"}, ref="0"}, {vars={"Elix_35"}, ref="0"},
{vars={"Elix_36"}, ref="0"}, {vars={"Elix_37"}, ref="0"}, {vars={"Elix_38"}, ref="0"}, {vars={"Elix_39"}, ref="0"}},
maxOptBatch=2848032
,
weight="weights",
model={depvar="E3_0",
effects={"beginn_hzv","jahr","gruppe","post","gruppe_post",
"geschlecht","age","FV","F","PG1","PG2","PG3","PG4","PG5",
"Elix_01","Elix_02","Elix_03","Elix_04","Elix_05","Elix_06","Elix_07","Elix_08","Elix_09","Elix_10","Elix_11","Elix_12","Elix_13","Elix_14","Elix_15","Elix_16","Elix_17","Elix_18","Elix_19",
"Elix_20","Elix_21","Elix_22","Elix_23","Elix_24","Elix_25","Elix_26","Elix_27","Elix_28","Elix_29","Elix_30","Elix_31","Elix_32","Elix_33","Elix_34","Elix_35","Elix_36","Elix_37","Elix_38","Elix_39"},
dist="gamma", link="log"};
run;
quit;
++++++++++++++++++++++++++++++ CAS Server Log:
2026-02-23T23:15:17,063 INFO [00000007] 2624910 P226526 301 [tkcasalic.c:466] - Opening license file '/opt/sas/viya/config/etc/cas/default/sas_license.txt'.
2026-02-23T23:15:17,130 INFO [00000007] 2624910 P226526 301 [tkcastaba.c:4299] - Accessed global table REGRESSION_KOSTEN_ITT loaded in caslib cpmevalhzv.
2026-02-23T23:15:17,188 INFO [00000007] 2624910 P226526 301 [tkcasaimp.c:4504] - ++ action regression.genmod / table={name='regression_kosten_itt', caslib='cpmevalhzv', where='zeitpunkt < 6'}, class={{vars={'beginn_hzv'}}, {vars={'jahr'}}, {vars={'gruppe'}, ref='0'}, {vars={'post'}, ref='0'}, {vars={'gruppe_post'}, ref='0'}, {vars={'FV'}, ref='0'}, {vars={'F'}, ref='0'}, {vars={'PG1'}, ref='0'}, {vars={'PG2'}, ref='0'}, {vars={'PG3'}, ref='0'}, {vars={'PG4'}, ref='0'}, {vars={'PG5'}, ref='0'}, {vars={'Elix_01'}, ref='0'}, {vars={'Elix_02'}, ref='0'}, {vars={'Elix_03'}, ref='0'}, {vars={'Elix_04'}, ref='0'}, {vars={'Elix_05'}, ref='0'}, {vars={'Elix_06'}, ref='0'}, {vars={'Elix_07'}, ref='0'}, {vars={'Elix_08'}, ref='0'}, {vars={'Elix_09'}, ref='0'}, {vars={'Elix_10'}, ref='0'}, {vars={'Elix_11'}, ref='0'}, {vars={'Elix_12'}, ref='0'}, {vars={'Elix_13'}, ref='0'}, {vars={'Elix_14'}, ref='0'}, {vars={'Elix_15'}, ref='0'}, {vars={'Elix_16'}, ref='0'}, {vars={'Elix_17'}, ref='0'}, {vars={'Elix_18'}, ref='0'}, {vars={'Elix_19'}, ref='0'}, {vars={'Elix_20'}, ref='0'}, {vars={'Elix_21'}, ref='0...
2026-02-23T23:15:38,278 FATAL [00000007] 2624910 P226526 301 [cas.c:161] - Exception in action.
2026-02-23T23:15:38,279 FATAL [00000007] 2624910 P226526 301 [cas.c:163] - Domain exception
2026-02-23T23:15:38,280 FATAL [00000007] 2624910 P226526 301 [cas.c:188] - /opt/sas/viya/home/SASFoundation/sasexe/tkcasdrv.so(tktracex+0x42) [0x7fc49392f612]
/opt/sas/viya/home/SASFoundation/sasexe/tkcasdrv.so(exceptionHandler+0x266) [0x7fc4938c2f46]
/opt/sas/viya/home/SASFoundation/sasexe/tkmk.so(bktExcept+0x51) [0x7fc499d29671]
/opt/sas/viya/home/SASFoundation/sasexe/tkmk.so(bkt_fpe+0x80) [0x7fc499d2e910]
/opt/sas/viya/home/SASFoundation/sasexe/tkmk.so(bkt_signal_handler+0x154) [0x7fc499d29d14]
/usr/lib64/libpthread.so.0(+0x12990) [0x7fc49b3b7990]
/opt/sas/viya/home/SASFoundation/sasexe/tkznlo.so(+0x15b42) [0x7fc45f18fb42]
/opt/sas/viya/home/SASFoundation/sasexe/tkznlo.so(+0x1a1d75) [0x7fc45f31bd75]
/opt/sas/viya/home/SASFoundation/sasexe/tkznlo.so(+0x19dbea) [0x7fc45f317bea]
/opt/sas/viya/home/SASFoundation/sasexe/tkznlo.so(+0xcaa2f) [0x7fc45f244a2f]
/opt/sas/viya/home/SASFoundation/sasexe/regcas.so(genmodRunOptimization+0x78) [0x7fc4751c3268]
/opt/sas/viya/home/SASFoundation/sasexe/regcas.so(genmodFitModel+0x71b) [0x7fc4751c27bb]
/opt/sas/viya/home/SASFoundation/sasexe/airslct.so(airslctSelModel+0x1cf0) [0x7fc4741ee270]
/opt/sas/viya/home/SASFoundation/sasexe/regcas.so(+0x8dde3) [0x7fc475159de3]
/opt/sas/viya/home/SASFoundation/sasexe/tkcasa.so(casaInvoke+0x2edf) [0x7fc48ae7e45f]
/opt/sas/viya/home/SASFoundation/sasexe/tkcasdrv.so(HandleActionControllerThread+0xa75) [0x7fc4938d0f65]
/opt/sas/viya/home/SASFoundation/sasexe/tkmk.so(sktMain+0xf7) [0x7fc499d27527]
/opt/sas/viya/home/SASFoundation/sasexe/tkmk.so(bktMain+0x78) [0x7fc499d29498]
/usr/lib64/libpthread.so.0(+0x81ca) [0x7fc49b3ad1ca]
++++++++++++++++++++++++++++++
Any idea? 😊
Best regards,
Klaus
SAS Technical Support provided the solution: "Are the many 0.01 values that you mention actually zeros that you replaced with 0.01? If so, then you might want to try using the Tweedie distribution using the original zero values. Unlike the gamma distribution which doesn't support zeros, the Tweedie does support zeros and can allow a large mass of zeros."
SAS Technical Support provided the solution: "Are the many 0.01 values that you mention actually zeros that you replaced with 0.01? If so, then you might want to try using the Tweedie distribution using the original zero values. Unlike the gamma distribution which doesn't support zeros, the Tweedie does support zeros and can allow a large mass of zeros."
Nearly 200 sessions are now available on demand with the SAS Innovate Digital Pass.
Explore Now →ANOVA, or Analysis Of Variance, is used to compare the averages or means of two or more populations to better understand how they differ. Watch this tutorial for more.
Find more tutorials on the SAS Users YouTube channel.