For those that have been following this series, you may be interested in an SAS Global Forum paper written by my colleague Elliot Inman and I titled “Developing Your Own SAS Studio Custom Tasks for Advanced Analytics”. The paper focuses on three Custom Tasks developed for PROC IRT.
For those of who are attending SAS Global Forum in Orlando, Elliot will be presenting on our paper today (Tuesday, April 4th, 2017) from 3:30 to 4:30PM. The details of the session are located here, so make sure and attend to hear more!
On the SAS Studio Task GitHub, there are three Custom Tasks (MyIRT, MyIRTModel, MyIRTSurvey) and a SAS Program called “Make Data.sas.” Download the tasks to try them yourself!
Standard SAS Studio Tasks already include many advanced analytic procedures like data mining and other high performance models, enabling point-and-click generation and execution of SAS code. However, Studio users can extend the power of tasks by creating tasks of their own – to enable point-and-click access to the very latest SAS statistical procedures, their own default model definitions, or previously-developed SAS STAT or SAS MACRO code. Best of all, these point-and-click tasks can be developed directly in SAS Studio without the need to compile binaries or build dll files using third-party software.
In this paper, we demonstrate three approaches to developing custom tasks. First, we build a custom task to provide point-and-click access to PROC IRT including very recently added functionality to the item response theory procedure used to analyze educational test and opinion survey data. Second, we build a custom task that calls a MACRO for previously developed SAS code and show how point-and-click options can be set up to allow users to guide the execution of complex MACRO code. Third, we demonstrate just enough of the underlying Apache Velocity Template Language code to enable developers to take advantage of the benefits of that language to support their SAS process. Finally, we show how these tasks can easily be shared among a user community, increasing the efficiency of analytic modeling across the organization.
This is a bare-bones task example. It allows the user to select a dataset and items (variables) on which they would like to run PROC IRT. It will use the default resfunc=rasch option.
This example is slightly more complex. The previous task runs the Rasch model and does not allow the user to select a model. This task uses a check box group to allow the user to select any of the many model now included in PROC IRT. This will generate a macro call with the model as the macro variable.
This tasks add a little more room for customization than the previous task. The previous task executed the same macro with different input macro variables. In this task, the Customer Survey group allows the user to choose from multiple options, and each will execute a separate macro altogether. The OPTIONS tab also allows the user to select items for output as well as create output datasets.