Post on 16-Mar-2018
©OCSLifeSciences
www.ocs-lifesciences.com 1
AUserInterfaceToYourSASPrograms
HailemichaelM.Worku,OCSLifeSciences,theNetherlands
©OCSLifeSciences
www.ocs-lifesciences.com 2
Agenda§ IntroducHon§ CaseStudy:SASBaseforaReproducibleResearch§ AnAlterna/veApproach:viaSASEG§ ApplicaHon:
§ Front-end/Interface§ Back-end/‘TheMagic’§ ProcessFlowDiagram/logic
§ Conclusion
©OCSLifeSciences
www.ocs-lifesciences.com 3
IntroducHon
§ SASprogramsareusuallyplaintextSASscripts.§ Werantheminamanualorautomatedfashion.§ Challengesfor‘normal’Users:§ LackofinteracHvitywithusers(e.g.,inputparameters).§ Difficultforuserswhohaveli\leornoaffinityfor
programming.§ Usersareo]eninterestedonthefinalreportfor
revieworsubmission.
©OCSLifeSciences
www.ocs-lifesciences.com 4
CaseStudy1:SASBaseforDataAnalysis
§ TheCLASSdatasetisavailableinSASHELPlibrary.§ SASprogramsforimporHng,exploringandgeneraHng
reportonCLASSdataset.§ Moreoutputsthanwhatyouwouldnormallyexpect.
©OCSLifeSciences
www.ocs-lifesciences.com 5
CaseStudy1(Cont’d):TheChallenges?
§ WhatIf–aquesHonby‘normal’users?§ Areportforweightofsubjectsbygender(bothor
single).§ Excludeasubjectwhoseweightvalueisbelow/above
certainthresholdvalue.§ Importanytypeofclassdatasetandperformsimilar
tasks.§ Dousers‘care’aboutwhatishappingintheback-end/
The‘Magic’???
©OCSLifeSciences
www.ocs-lifesciences.com 6
AlternaHveApproach:viaSASEG
§ There'sarelaHvelyaccessiblesoluHoninSASEnterpriseGuide(EG).§ SASEGisanIDEdedicatedforSASdevelopment.
§ Add-InsinSASEGprovideafamiliar,customizableuserinterfacethatconnectstocustomSASprogramsinthebackground.
§ Thefront-end/userinterfacecanbebuiltusinghighlevelprogramminglanguages(.NET,C#,Java,etc).
©OCSLifeSciences
www.ocs-lifesciences.com 7
CaseStudy2:TempConverterAppThe Interface: TheBack-end/‘Magic’:
%lettxtFld_tempInput=37.75;%letcomboBox_fromTo=2;%include"temp_converter_pro.sas";
©OCSLifeSciences
www.ocs-lifesciences.com 8
CaseStudy3:Real-worldApplicaHons§ Thetemperatureconversionadd-in(TCApp)iseasierto
explainandunderstand.§ However,real-worldapplicaHonsaremorecomplex
andaimedfordifferenttasks.§ Titanic:MachineLearningfromDisaster§ TheTitanicdatasetisaboutsurvivalonTitanicship
thatwasmadeavailableonlineforfree(Kaggle:h\ps://www.kaggle.com/).
©OCSLifeSciences
www.ocs-lifesciences.com 9
Titanic:MachineLearningfromDisaster
§ TitanicDataset:§ Kaggleprovidestwosetofdatasets:theTrainingset
(train.csv)andtheTestset(test.csv).§ Thedatasetisabout2,224travelersandcrewwho
wereontheship(e.g.,age,gender,#siblings,#parents,fare,etc)
§ Themaindifferencebetweenthetwoinputfilesistheresponsevariable(survived:1=Yes;0=No).
§ Prizesforwinnersandjobopportunity.
©OCSLifeSciences
www.ocs-lifesciences.com 10
TheTitanicExplorerApp:Front-end/Interface
©OCSLifeSciences
www.ocs-lifesciences.com 11
TheTitanicExplorerApp:ProcessFlowDiagram
©OCSLifeSciences
www.ocs-lifesciences.com 12
TheTitanicExplorerApp:Back-end/The‘Magic’
§ ThemainapplicaHonhasthreemaincomponents:§ ImporHngrawCSVfiles(train.csv&test.csv).§ MachineLearning(ML)part:
§ Preprocessingstep.§ Exploringstep.§ Fiwng/TesHngMLtechniques.
§ GeneraHngreport.§ Modularapproachistheway-to-go.
©OCSLifeSciences
www.ocs-lifesciences.com 13
Conclusion§ Usersaremainlyinterestedonthefollowing4tasks:
§ Loadingstudy/researchdata.§ Preprocessimporteddata.§ Performmaintasks(e.g.,explore,analyze,etc).§ Generateareportforreview/submission.
§ Usersarenoto]eninterestedaboutthe‘Magic'.§ BuildingsuchapplicaHon/add-incouldimproveUser’s
experience.§ SASprogramsusedfortheback-endisplaxorm
independent.
©OCSLifeSciences
www.ocs-lifesciences.com 14
ThankYou!
QuesHons???