Posts

Showing posts with the label SAS

2018 plan for getting expertise in Machine Learning and Deep Learning

Machine Learning and deep learning are next frontier in the world of innovation. These skill sets are high in demand and demand is going to increase further as we are moving towards a world with connected systems. Although I am experienced professional with SAS having multiple SAS certifications and  using SAS for programming, predictive model building, optimization and data visualization for more than seven years, I will be foolish I do not recognize how important it is to adopt open source platforms for innovation.  2018 plan to acquire expertise in these are are 1. Choose a programming language and I have chose python as my language of preference  2. Do hands on practice to be efficient in Pandas and Numpy. These two libraries are useful and very important for data exploration,wrangling and data cleaning. I find Kernals in Kaggle and below blogs and books to be helpful tutorial for  Pandas  a. https://www.dataquest.io/blog/pandas-tutorial...

Solution for ERROR: Some character data was lost during transcoding in the dataset

When I search for the mentioned error I get the link solution provided administration oriented but developers do not have access.     http://support.sas.com/kb/52/716.html Please see my solution below proc options option=config; run; proc options group=languagecontrol; run; /* Show the encoding value for the problematic data set */ %let dsn=item_information_may16; %let dsid=%sysfunc(open(&dsn,i)); %put &dsn ENCODING is: %sysfunc(attrc(&dsid,encoding)); /*Renaming item desc file  (encoding=any) allowed reading****************************/ data tmp.item_info_curr; set hc.item_information_may16 (encoding=any); run; /*gave error*/ data item_info_curr; set item_information_may16; run;

SAS Global Forum 2016

This was my first global conference of this kind. I have attended academic conferences but those were not in this scale.  I feel proud to be a part of such a large community. SAS has opened itself to open source technologies by adopting new architecture called SAS Viya.  My takeaways from the conference are 1.        Open and Cloud ready SAS Viya architecture is designed for varied skillsets to solve all types of business problems. Initial offerings come with point and click interface and programming features. This means I need to add more skillsets quicker than others to keep myself valuable. For more details, click http://www.sas.com/en_us/news/press-releases/2016/april/sas-viya-sgf16.html   and http://www.sas.com/en_us/software/viya.html . Personally, I am excited about this as I think new architecture opens the door for more innovation. There are lot to learn about this to be able to use it efficiently. 2.    ...

How to check whether a SAS dataset exist or not and throw an error in the log ?

/* if the data set exists, then conditionally execute the step(s). %sysfunc checks the availability of the data in the library location. It means it checks historical sas data. It generates the system error if the not is data available at the defined library  */ %let dsname=&dataval.MKT_DATA;  /**** declaring data set name with library*****/ %macro warning1(name); %if %sysfunc(exist(&name)) %then %do; Proc printto log="&logfile.\WarningLog..txt" new;     /*** printing log in the text file at specifile location &logfile****/ run; %Put WARNING :- &name does not exists; Proc printto  ; Run; %end; %else %do; Proc printto log="&logfile.\WarningLog.txt" ; run; %put &name exists; Proc printto  ; Run; %end; %mend ; %warning1(&dsname); /**** Pros:  If any sas process is dependent on the existence of the data then we can use this macro***/ /**** Cons:  *Even if the SAS data set is a...

Big data and predictive analytics

Today ‘big data’ has become a buzz word. Everyone is talking about it. Big data are characterized by three attributes, which are high volume, high velocity and high variety. A few researchers also recently proposed "high volatility" as the fourth attribute of big data. We can define big data as the collection of data which are so large, complex and ever growing that they cannot be processed and stored using traditional methods. The size of big data is greater than petabytes. This makes storage of big data very difficult. Examples of the big data are web data, telecom data, sensor data of jet engines, RNA-DNA data etc. The challenges in processing big data led to the development of new technologies such as Hodoop and Map Reduce. People claim that big data can be processed in reasonable time using these technologies. But I have yet to use the above technologies. Hence I cannot judge the efficiency of these technologies. When we deal with any data, then we come across ...

Scoring observations using PROC FASTCLUS

PROC FASTCLUS can be used to perform a k-means clustering for observations. All the observations in the training dataset are assigned to clusters on the basis of the parametrization of the procedure and of their variable values. Scoring the observations in the validation dataset using PROC FASTCLUS seems a little bit challenging because the cluster assignment rules depend on new observations now. Scoring new observations without changing the cluster assignment rules can be achieved by using a SEED dataset in PROC FASTCLUS. /*original clustering */ %let indsn = input; *your input dataset; %let nclus = maxclus; *number of clusters to request; %let indvars = varlist; *independent variables to run proc fastclus on; %let valid = val_data; *validation dataset to score; proc fastclus data=&indsn maxclusters = &nclus outseed= clusterSeeds; var &indvars; run; /*scoring new observations using the seed dataset */ proc fastclus data=&valid out=&valid....