BookmarkSubscribeRSS Feed
deleted_user
Not applicable
I am wanting to investigate the relationship between bear-human conflicts and a number of continuous variables (ex. aspect, slope, solar radiation, etc.) by using true conflicts and pseudo conflicts (created by generating random points from true points) as my dependent variable. I was wanting to use PROC REG, but from what I understand this is limited to non-categorical dependent variables. I just recently tested out CATMOD, but I am not sure how / if I can still use AIC model selection for this procedure. Please advise as to how I can complete this procedure.
5 REPLIES 5
Doc_Duke
Rhodochrosite | Level 12
Go to support.sas.com and search for
catmod aic
and you will find a paper that should answer your question.
StatDave
SAS Super FREQ
If your response is binary, you can fit a logistic model using PROC LOGISTIC or PROC GENMOD. Neither does model selection based on AIC. However, both display the AIC for any single model that you fit (in GENMOD, AIC is displayed beginning in SAS 9.2). You can do model selection based on p-values using the SELECTION= option in PROC LOGISTIC. See also the SLENTRY= and SLSTAY= options, all in the MODEL statement.
plf515
Lapis Lazuli | Level 10
You can use PROC GLMSELECT for the model selection, and then use the model that it selects in PROC LOGISTIC or PROC GENMOD.

Although GLMSELECT is designed for model selection for GLM, it works well with logistic models too.

See my paper (coauthored with David Cassell) at NESUG last year ....
www.nesug.org/Proceedings/nesug09/sa/sa01.pdf

although I recomend LASSO or LAR rather than AIC, this PROC can use AIC selection

Peter
yonggang
SAS Employee

You may try PROC QUANTSELECT to perform Support Vector Machine (SVM) classification with LASSO penalty. An example is as follows:

/* Start: data simulation */
%let seed=111;
Data raw;
     array x[10];
     do i=1 to 1000;
          x0=1; /* regressor for estimating bias parameter */
          do j=1 to 10;
              x = rannor(&seed);
          end;
          y = 2*((3*x1+2*x2+x3+1+0.1*rannor(&seed))>0)-1; /*So the true model is proportional to (bias=1, x1=3, x2=2, x1=1).*/
          output;
     end;
run;
/* End: data simulation */

/* TransformSVM2QR macro pre-processes raw data for using QUANTSELECT.*/
%macro TransformSVM2QR(raw);
data transferred_&raw;
   set &raw;
   %do j=1 %to 10;
       x&j = y*x&j;
   %end;
   bias=y;
   y=1;
   run;
%mend TransformSVM2QR;

%TransformSVM2QR(raw);

ods graphics on;


proc quantselect data=transferred_raw plot=all;
   model y= bias x1-x10/quantile=1 noint selection=lasso(select=aic include=1 sh=3);
   partition fraction(validate=0.2);
run;

lvm
Rhodochrosite | Level 12 lvm
Rhodochrosite | Level 12

If you have sas 9.4 (released this summer), you can run the new HPGENSELECT for model selection with exponential-family distributions.Thus, you can do logistic regression. The proc is designed for Big Data problems, but runs on any data set. It does not have the full functionality of GLMSELECT, but it may be fine for your needs. I have not tried it yet (I still can't use 9.4)

sas-innovate-2024.png

Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.

Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.

 

Register now!

What is ANOVA?

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.

Discussion stats
  • 5 replies
  • 1849 views
  • 0 likes
  • 6 in conversation