Friday, May 9, 2025

How I Unlocked Full Functionality in SAS EMiner Using SAS Online

 

๐Ÿ“˜ Background

While exploring SAS tools in my free time, I found a way to run full data modeling in SAS Enterprise Miner (EMiner) demo version, which normally doesnโ€™t allow users to upload their own data. This restriction makes it hard to practice real-world modeling โ€” unless you have full enterprise access.


๐Ÿ” What I Discovered

I used the SAS Online Academic version, which allows limited data uploads. By uploading datasets to the Library in SAS Online, I was able to access those same datasets from within EMiner.

Hereโ€™s what I did:

  • Uploaded my data using SAS Online

  • Accessed the same data from EMiner using the Program Editor node

  • Successfully ran logistic regression and other base SAS procedures

This effectively created a workaround (or backdoor) that enabled me to fully use EMinerโ€™s capabilities โ€” even in demo mode.


๐Ÿ”„ From Experiment to Impact

After discovering this workaround:

  • I shared the process and results with professionals seeking SAS EMiner expertise.

  • I was assigned project work based on this technique and successfully completed multiple tasks involving logistic model validation, scorecard development, and code migration.

  • The quality of my work led to full-time employment with a Tier-1 consulting firm focused on credit risk and financial modeling.

This experience validated two important lessons:

  1. Independent learning can drive enterprise-level impact

  2. A small technical breakthrough, when shared ethically, can open professional doors


โš ๏ธ A Note on Ethics

Itโ€™s essential to clarify that while this workaround is effective, it was discovered independently during personal time and intended for educational/prototyping use only. I strongly encourage:

  • Transparent disclosure of any such techniques to tool owners

  • Ethical acknowledgment of all contributors in professional contexts


๐ŸŽฏ Key Takeaways

โœ… Tools used: SAS EMiner (demo), SAS Online Academic, Base SAS
โœ… Techniques applied: Data Library mapping, Logistic Regression, Program Node use
โœ… Outcomes achieved: Model validation across environments, automation of Base SAS procedures, knowledge sharing across teams


๐Ÿ“ข Open to Collaboration

If you're working on model risk, data validation frameworks, or exploring modeling in constrained environments, Iโ€™d love to connect. Iโ€™m open to roles involving credit risk modeling, automation in analytics, or platform optimization using SAS, R, or Python.

๐Ÿ“ง nagasatyasrinivask@icloud.com

Sunday, January 8, 2023

SAS Macro for Splitting Datasets into Multiple Parts

options symbolgen mprint mlogic mcompilenote=all;

%macro split (dsn=, parts=);
%if &parts =  %then %do;
   %put ERROR: 'parts' is not specified.;
   %put Use the 'parts=' option to specify the number of parts to split the dataset into.;
   %return;
%end;
%if &dsn = %then %do;
   %put ERROR: 'dsn' is not specified.;
   %put Use the 'dsn=' option to specify the dataset to split.;
   %return;
%end;
proc sql noprint;
select count(*) into :n trimmed from &dsn;quit;
%let num=%sysfunc(inputn(&n,8.));
%let fin=%sysfunc(round(&num/&parts));
%put &fin;
%let obsm=0;
%do i=1 %to (&parts);
%let fobs=%eval(&obsm+1);
%let obsm=%eval(&fobs-1+&fin);

data ds&i;
set &dsn (firstobs=&fobs obs=%sysfunc(min(&obsm,&num)));
run;
%end;
run;
%mend;

Example:

  1. %split (dsn=sashelp.cars, parts=4);
  2. %split (dsn=, parts=4);
  3. %split (dsn=sashelp.cars, parts=);



How I Unlocked Full Functionality in SAS EMiner Using SAS Online

  ๐Ÿ“˜ Background While exploring SAS tools in my free time, I found a way to run full data modeling in SAS Enterprise Miner (EMiner) demo ve...