Wednesday, September 30, 2009

What do you do when standing in line at Starbucks? ... why check your clinical data against CDISC standards :) http://bit.ly/7pVze

CDISC Verification on iPhone

CDISC guidelines helps clinical data comply to a standard intended for submission to the FDA so it is important to ensure that you comply with all the guidelines. If you were to review the CDISC guidelines, you will see hundred of pages of rules which your data must comply with. To do this review manually would be time consuming and most likely lead to errors due to not being able to catching the details.

The part that I find challenging about reviewing data against CDISC has to do it multiple times as data is being developed. There are times when I need to review the latest update and I am not at my desk. I have found a solution for this when I am out and about, I can review the latest data on my iPhone. This allows me to see how standardize my data is and I see the status of my CDISC effort at any moment even standing in line at Starbucks. :)

I capture a YouTube video as to how this is done which you can see below.

Monday, September 28, 2009

Performing stability analysis according to FDA guidelines on an iPhone? Sounds like an odd combination but it works. http://bit.ly/kuo3T

Performing Stability Analysis on iPhone

I was finishing up performing an analysis for a client developing a SAS macro to perform stability analysis. There are some good guidelines for this since the FDA has clearly defined how this is done. I found the article on the FDA website entitled "International Conference on Harmonization (ICH) - Guidance for Industry: Q1E Evaluation of Stability Data" to be very useful. Once I was able to get a SAS macro to perform this task, the next challenge is to have this available on an iPhone so the user can access the latest analysis anywhere on their iPhone.

Rather than going into a verbose description here, I recorded a video to illustrate this to you. I find that the iPhone which is a multi-touch graphical user interface can be best explained by showing so hope you find this video useful.

Sunday, September 27, 2009

How do you use Social Networking? Here are interesting factoids on how uses of these technologies based on numbers. http://bit.ly/33INWM

Friday, September 18, 2009

2009 Annual Conference Proceedings for WUSS09 are now available at: http://bit.ly/2z7Y8U
meeting with volenteers for VNHELP charity concert and LA last week was sold out and Santa Clara tickets almost out. http://bit.ly/n7ro7
Building a data warehouse for Congress Bailout with SAS? The outliers on this analysis should be intriguing. http://bit.ly/aR335

Tuesday, September 15, 2009

Does some one at Apple review every App sent to AppStore? My first time experience... http://bit.ly/13L3B3

Does some one at Apple review every App sent to AppStore?

I recently submitted an iPhone application to the apple developer program to be approved. This was my first time so the hoops that Apple had me jump through were interesting. The initial application had general information which seems pretty normal. These included things such as:

  • Application Name: BI Flash
  • Application Description: BI Flash delivers business intelligence to information to the iPhone. It takes SAS macros, programs or data on a server and delivers this to iPhone. The user can register the programs or SAS libraries, and then make this available to specified users who can then view this through BI Flash on the iPhone. This is executed in real time so the user gets always the latest data.
  • Primary Category: Business
  • Keywords: Business Intelligence, SAS, Analytics
  • Application URL: http://meta-x.com/biflash

These seem pretty standard since they would probably use this for the AppStore. The next step is pretty interesting since it asked for me to check three categories including: None, Infrequent/Mild or Frequent/Intense. The description for the categories included:

  • Cartoon or Fantasy Violence
  • Realistic Violence
  • Sexual Content or Nudity
  • Profanity or Crude Humor
  • Alcohol, Tobacco, or Drug Use or References
  • Mature/Suggestive Themes
  • Simulated Gambling
  • Horror/Fear Themes
  • Prolonged Graphic or Sadistic Realistic Violence
  • Graphic Sexual Content and Nudity
I can see how Apple would quickly identify those high profile applications due to indecent content. I don’t want to get into the politics of how Apple screens their Apps but I just put “None” on all my applications.

I then uploaded the binary for my application along with a large 512x512 icon, a screen shot. It took Apple a couple of weeks for them to review my app. Since they receive thousands of apps, I wonder if they even check it at all. I was surprise to find out that they did do a detailed review. They found two things that they wanted to change due to that fact that “it does not adhere to the iPhone Human Interface Guidelines as outlined in the iPhone Developer Program License Agreement section 3.3.5.”

The first part is when the application is tested without a network connection; it just presented a blank screen. Apparently, I missed these guidelines which suppose to display a clear message detailing what the user is suppose to do. I created a screen that is more friendly now:



The second point is that the small icon of the application does not match the large icon.




They have very specific guidelines. I had our graphic artist work on these at different stages of the application so they appeared different so they thought it would confuse the user. I thought these suggestions were very good and I do appreciate that someone actually took the time to do a review.

I then updated the large icon as shown here:



I just submitted an updated version so they sent me a friendly but generic message that someone is reviewing it and will send me a message of any additional request. I will keep my fingers crossed but hopefully this round will take less than two weeks.

Monday, September 14, 2009

Just moved to our new office. I was able to retain the last four digit of our phone number :) The new contact: http://bit.ly/12b56c
How do I connect my iPhone to a SAS server? A four step description explains the process. http://bit.ly/13GQXg

Thursday, September 10, 2009

How do you go about validating data transformed from legacy to CDISC SDTM and ADaM? Here are some recommended steps. http://bit.ly/2xOkYy

Validating Transformation to CDISC SDTM and ADaM

You have just finished transforming your data from your operational clinical database into SDTM and ADaM, now how do you go about validating this? In general you want to have a method that reviews both the structure according to the guidelines and the values of the data to ensure that nothing is changed from what was collected. The following steps uses SAS tools to validate and ensure the integrity of your final CDISC data.

  1. Transformation Model Validation- A transformation model documenting the source data and how it was transformed confirming the destination and source variables.



  2. Data Value Subset Review - An automated report printing out a subset of the data before and after the transformation is reviewed and validated.  This may catch truncation.


     
  3. Categorical Aggregate Review - An automated summary report is generated summarizing the frequency counts of categorical variables verifying the counts are the same.  This catches missing or dropped values.


      
  4. Continuous Aggregate Review - An automated summary report is generated summarizing the min, max median  counts of continuous variables verifying the counts are the same.  This catches missing or dropped values.

     
  5. CDISC Rules PROC CDISC - SAS tools such as PROC CDISC provides a short list of deviations or guidelines that may have been violated.  This review is applied programmatically and a report is generated.


  6. Variable Lengths - An evaluation of all variable lengths and a report is generated with recommendations on standardizing lengths for variables across all data to adhere to standards.


     
  7. Deviation Summary - A summary report documenting all deviations and their resolutions.


     
  8. Test Plan - A formal test plan document is used to document all the related tests and deviations.

  9. CDISC Builder Rule Test - An 18 criteria check list.  The list are shown here with an example report shown below:
    1. Required Fields: Required identifier variables including: DOMAIN, USUBJID, STUDYID and --SEQ.
    2. Subject Variable: (4.1.2.3) For variable names, labels and comments, use the word "Subject" when referring to "patients" or "healthy volunteer".
    3. Variable Length: (4.1.2.1) Variable names are limited to 8 characters with labels up to 40 characters.
    4. Yes/No: (4.1.3.7) Variables where the response is Yes or No (Y/N) should normally be populated for both Yes and No responses.
    5. Date Time Format: (4.1.4.1) Date or Datetime must be in ISO 8601 format.
    6. Study Day Variable: (4.1.4.4) Study day variable has the name ---DY.
    7. Variable Names: (3.2.3) If any variable names used matches CDISC variables, the associated label has to match.
    8. Variable Label: (3.2.3) If any variable labels match that of CDISC labels, the associated variable has to match.
    9. Variable Type: (3.2.3) If any variables match that of CDISC variables, the associated type has to match.
    10. Dataset Names: (3.2.3) If any of the dataset names match CDISC, the associated data label has to match.
    11. Dataset Labels: (3.2.3) If any of the dataset label match CDISC, the associated dataset name  has to match.
    12. Abbreviations: (10.3.1) (10.4) The following abbreviations are suggested for variable names and data sets.
       

      Acronym

      Descriptive Text

      AEAdverse Events
      AUAutopsy
      BMBone Mineral Density (BMD) Data
      BRBiopsy
      CMConcomitant Meds
      COComments
      DADrug Accountability
      DCDisease Characteristics
      DMDemographics
      DSDisposition
      DVProtocol Deviations
      EEEEG
      EGEEG
      EXExposure
      HUHealthcare Resource Utilization
      IEInclusion/Exclusion
      IMImaging
      LBLaboratory Data
      MBMicrobiology Specimens
      MHMedical History
      MLMeal Data
      MSMicrobiology Susceptibility
      OMOrgan Measurements
      PCPK Concentration
      PEPhysical Exam
      PPPK Parameters
      PGPharmacogenomics
      QSQuestionnaires
      SCSubject Characteristics
      SESubject Elements
      SGSurgey
      SKSkin Test
      SLSleep (Polysomnography) Data
      SLSigns and Symptoms
      STStress (Exercise) Test Data
      SUSubstance Use
      SVSubject Visits
      TATrial Arms
      TETrial Elements
      TITrial Inclusion/Exclusion Criteria
      TSTrial Summary
      TVTrial Visits
      VSVital Signs
      CANACTION
      ADJADJUSTMENT
      ADJANALYSIS DATASET
      BLBASELINE
      BRTHBIRTH
      BODBODY
      CANCANCER
      CATCATEGORY
      CCHARACTER
      CNDCONDITION
      CLASCLASS
      CDCODE
      COMCOMMENT
      CONCONCOMITANT
      CONGCONGENTTAL
      DTCDATE TIME - CHARACTER
      DYDAY
      DTHDEATH
      DECODDECODE
      DRVDERIVED
      DESCDESCRIPTION
      DISABDISABILITY
      DOSDOSE
      DOSDOSAGE
      DOSEDOSE
      DOSEDOSAGE
      DURDURATION
      ELELAPSED
      ETELEMENT
      EMEMERGENT
      ENDEND
      ENEND
      ETHNICETHNICITY
      XEXTERNAL
      EVALEVALUATOR
      EVLEVALUATION
      FASTFASTING
      FNFILENAME
      FLFLAG
      FRMFORMULATION, FORM
      FREQFREQUENCY
      GRGRADE
      GRPGROUP
      HIHIGHER LIMIT
      HOSPHOSPITALIZATION
      IDIDENTIFIER
      INDCINDICATION
      INDCINDICATOR
      INTINTERVAL
      INTPINTERPRETATION
      INVINVESTIGATOR
      LIFELIFE-THREATENING
      LOCLOCATION
      LOINCLOINC CODE
      LOLOWER LIMIT
      MIEMEDICALLY-IMPORTANT EVENT
      NAMNAME
      NSTNON-STUDY THERAPY
      NRNORMAL RANGE
      NDNOT DONE
      NUMNUMBER
      NNUMERIC
      ONGOONGOING
      ORDORDER
      ORIGORIGIN
      ORORIGINAL
      OTHOTHER
      OOTHER
      OUTOUTCOME
      ODOVERDOSE
      PARMPARAMETER
      PATTPATTERN
      POPPOPULATION
      POSPOSITION
      QUALQUALIFIER
      REASREASON
      REFREFERENCE
      RFREFERENCE
      RGMREGIMEN
      RELRELATED
      RRELATED
      RELRELATIONSHIP
      RRELATIONSHIP
      RESRESULT
      RLRULE
      SEQSEQUENCE
      SSERIOUS
      SERSERIOUS
      SEVSEVERITY
      SPECSPECIMEN
      SPCSPECIMEN
      SPECSPONSOR
      SPCSPONSOR
      STSTANDARD
      STDSTANDARD
      STSTART
      STDSTART
      STATSTATUS
      SCATSUBCATEGORY
      SUBJSUBJECT
      SUPPSUPPLEMENTAL
      SYSSYSTEM
      TXTTEXT
      TMTIME
      TPTTIMEPOINT
      TOTTOTAL
      TOXTOXICITY
      TRANSTRANSITION
      TRTTREATMENT
      UUNIT
      UUNIQUE
      UPUNPLANNED
      VARVARIABLE
      VALVALUE
      VVEHICLE
    13. SEQ Values: When the --SEQ variable is used, it must have unique values for each USUBJID within each domain.
    14. Label Casing: For Dataset labels and variable labels, all non trivial words (more than three characters) must start with a capital letter with the rest of the characters lowercase.
    15. Required Values: (4.1.1.5) For required fields such as the ones specified in number 1, check to see if there are values.  If there are any missing, values, report the observation number where it is missing.
    16. Similar Parenthesis:  For labels with matching values inside parenthesis such as (Yes/No) within the same dataset, it will check to see if the variables have the same type and length.  If not, it will report the differences.
    17. Required Variables: (4.1.1.5) A Required variable is any variable that is basic to the identification of a data record (i.e., essential key variables and a topic variable) or is necessary to make the record meaningful. Required variables should always be included in the dataset and cannot be null for any record.
    18. Expected Variable: (4.1.1.5) An Expected variable is any variable necessary to make a record useful in the context of a specific domain. Columns for Expected variables are assumed to be present in each submitted dataset even if some values are null.

Wednesday, September 9, 2009

Can compact digital camera and one person replace network news? I experimented video blogging at a conference to see. http://bit.ly/Ft8Pp

Video Interviews at WUSS 09 Conference

New media has made it possible for a non professional like me to become a reporter. I did an experiment at a recent conference in San Jose. I took my Canon Elph which is normally used for taking pictures and switch on its video mode. It is so small that members that I interviewed barely noticed it was there. I then talked to the attendees at the conference in their area of expertise similar to what I use to do in the traditional blogging days where I would write up the blog based on the interview. The difference this time is upon completion of the interview, I would upload the videos directly to YouTube and whoa.. la... there it was. I did not edit it or do anything.

I realize that while holding the camera on my hand, it was not on a tripod so it was perhaps not stable and I was looking at the person I was talking to so the composition was not optimal but this adds to the whole amateur video blogging experience. This experiment of one man on the fly reporting was interesting. I hope to do it again at future conferences.

I will include some of the videos below for your viewing.


Claire Castell

Claire Castell, Mgr. Information Mgmt| Consumer and Small Business Deposit Risk at Wells Fargo shares the history of WUSS and its name.


Marci Russell

 Marci Russel, Web Project Manager of SAS Institute talks about Online Support at WUSS 2009 conference

 

Lora Delwiche

Lora Delwiche author of Little SAS book shares Debugging Techniques

 

Art Carpenter

Art Carpenter talks about SAS Macros at WUSS 09 in San Jose Art is a consultant for Caloxy, California Occidental Consultant

Michael A. Raithel

WUSS Opening Session Keynote Address by Michael A. Raithel It's not Easy Being a SAS Programmer


Vincent Delgobbo

Vincent DelGobbo, Senior Systems Developer for web Tools Group at SAS Institute talks about SAS export to Excel XML format at WUSS.

Heather Brown

Heather Brown, Senior Recruiter, Advanced Clinical Services LLC


SAS delivered as a SAAS. Perhaps SAS can just add another "A" to their name when on the web. :) http://bit.ly/tDWlx

Saturday, September 5, 2009

Can SAS Macros run on an iPhone? This video shows how it can be done with parameter selection on the iPhone. http://bit.ly/ib55u

Wednesday, September 2, 2009

Claire Castell shares the history of WUSS and how it got its name. An interview at WUSS09 in San Jose http://bit.ly/1DM2GO
Lora Delwiche author of Little SAS book shares Debugging Techniques at WUSS09 http://bit.ly/1473Wb
Marci Russell, Web Project Manager of SAS Institute talks about Online Support at WUSS09 conference http://bit.ly/lkDOu

Tuesday, September 1, 2009

Art Carpenter talks about SAS Macros at WUSS09 and his fifth book in San Jose. I interviewed him in training room: http://bit.ly/2prKTC
Michael Raithel delivers keynote address at WUSS09 in San Jose. Video clip available here: http://bit.ly/6MC8S
Vincent DelGobbo talks about how BASE SAS can export data to MS Excel in XML format. Interview at WUSS09 http://bit.ly/ezXMj
Attending WUSS09 in San Jose. Experimenting with video interview with my friend Heather Brown. http://bit.ly/hJS1x