Changeset 24328 in main


Ignore:
Timestamp:
12/16/21 14:10:16 (8 months ago)
Author:
LoisHaggard_STG
Message:

NMBIS Backend qModules30 - committing all files

Location:
adopters/nm/trunk/src/main/backend_qModules/3.0
Files:
26 deleted
76 edited

Legend:

Unmodified
Added
Removed
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/airq/_NO2.cfg

    r22029 r24328  
    2525d sasdata aq_no2_exceed
    2626d saspopdata popibiscnty90_19_20oct2020
    27 r data_where 2000<=nyear<=2019
    28 r pop_where 2000<=year<=2019
     27r data_where 2000<=nyear<=2020
     28r pop_where 2000<=year<=2020
    2929d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
    3030###############################################################################
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/airq/_NO2_annual.cfg

    r22029 r24328  
    2727d sasdata aq_no2_daily
    2828d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
    29 r data_where 1999<Year<2020
     29r data_where 2000<=Year<=2020
    3030
    3131#####################################################################
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/airq/_O3.cfg

    r22029 r24328  
    2828d saspopdata popibiscnty90_19_20oct2020
    2929
    30 r data_where 2000<=nyear<=2019
    31 r pop_where 2000<=year<=2019
     30r data_where 2000<=nyear<=2020
     31r pop_where 2000<=year<=2020
    3232
    3333d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/airq/_PM10.cfg

    r22029 r24328  
    11#==============================================================================
    22# IBIS-Q Configuration File
    3 # 
     3#
    44# Modifications:
    55# Date        By          Description
    66# ----------  ----------  -------------------------------------------------
    7 # 09/16/19    Tony        PM10 - Days /person-days Above Regulatory Standard 
     7# 09/16/19    Tony        PM10 - Days /person-days Above Regulatory Standard
    88# 11/18/2020  Kendall     added 2019, reworked file
    99#==============================================================================
    10 #value name_path value_path   
     10#value name_path value_path
    1111d homepath E:\ibisq\qModules30\_EPHT\airq
    1212d workpath E:\ibisq\workpath
     
    1616#d sasdata name of numerator sas data file
    1717#d saspopdata name of denominator sas data file
    18 #d sas_bin path to sas executable, and any arguments passed to sas 
     18#d sas_bin path to sas executable, and any arguments passed to sas
    1919#r data_where   filter for numerator
    2020#r pop_where    filter for denominator
     
    2626d saspopdata popibiscnty90_19_20oct2020
    2727
    28 r data_where 2000<=nyear<=2019
    29 r pop_where 2000<=year<=2019
     28r data_where 2000<=nyear<=2020
     29r pop_where 2000<=year<=2020
    3030
    3131d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
    3232###############################################################################
    33 # these are always here and always the same - they are xml heads and tails 
     33# these are always here and always the same - they are xml heads and tails
    3434#(wrapper for query response
    3535d response_head_content XMLResponse.head
     
    4444r test 0
    4545###########################################################
    46 #value name_sas name_html name_pop prompt type1 type2 length   
     46#value name_sas name_html name_pop prompt type1 type2 length
    4747#============================================================================
    48 #value =any value, place holder only 
     48#value =any value, place holder only
    4949# name_sas  = SAS variable name in the numerator data set (birth data set)
    5050# name_html = html name specified under <DIMENSION> <NAME> in Module XML file
    5151# name_pop  = SAS variable name in denominator data set (population data set)
    52 # prompt    = Place holder only, could by any character string. 
     52# prompt    = Place holder only, could by any character string.
    5353# type1     = CGI data type for SAS variable type (see comment lines 48 & 49)
    5454# type2     = CGI data type for regrouping purpose (see comment lines 51-59)
     
    6262#        3 -- Groupable variable (Continuous, need regrouping by cgi,)
    6363#        4 -- Grouped variable (keep the name space)
    64 #        6 -- Multiple columns 
     64#        6 -- Multiple columns
    6565#        7 -- Variable in standard population dataset
    6666#        8 -- Indicating variable (To be used with type2=3)
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/airq/_PM10_annual.cfg

    r22029 r24328  
    2727d sasdata aq_pm10_daily
    2828d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
    29 r data_where 1999<Year<2020
     29r data_where 2000<=Year<=2020
    3030#####################################################################
    3131#these are always here and always the same - they are xml
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/airq/_PM25.cfg

    r22029 r24328  
    11#==============================================================================
    22# IBIS-Q Configuration File
    3 # 
     3#
    44# Modifications:
    55# Date        By          Description
    66# ----------  ----------  -------------------------------------------------
    7 # 07/05/11    Paul        PM2.5 - Days /person-days Above Regulatory Standard 
     7# 07/05/11    Paul        PM2.5 - Days /person-days Above Regulatory Standard
    88# 11/18/2020  Kendall     added 2019, reworked file
    99#==============================================================================
    10 #value name_path value_path   
     10#value name_path value_path
    1111d homepath E:\ibisq\qModules30\_EPHT\airq
    1212d workpath E:\ibisq\workpath
     
    1616#d sasdata name of numerator sas data file
    1717#d saspopdata name of denominator sas data file
    18 #d sas_bin path to sas executable, and any arguments passed to sas 
     18#d sas_bin path to sas executable, and any arguments passed to sas
    1919#r data_where   filter for numerator
    2020#r pop_where    filter for denominator
     
    2525d sasdata aq_pm25_exceed
    2626d saspopdata popibiscnty90_19_20oct2020
    27 r data_where 2000<=nyear<=2019
    28 r pop_where 2000<=year<=2019
     27r data_where 2000<=nyear<=2020
     28r pop_where 2000<=year<=2020
    2929d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
    3030###############################################################################
    31 # these are always here and always the same - they are xml heads and tails 
     31# these are always here and always the same - they are xml heads and tails
    3232d response_head_content XMLResponse.head
    3333d response_tail_content XMLResponse.tail
     
    4141r test 0
    4242###########################################################
    43 #value name_sas name_html name_pop prompt type1 type2 length   
     43#value name_sas name_html name_pop prompt type1 type2 length
    4444#============================================================================
    45 #value =any value, place holder only 
     45#value =any value, place holder only
    4646# name_sas  = SAS variable name in the numerator data set (birth data set)
    4747# name_html = html name that specified under <DIMENSION> <NAME> in Module XML
     
    5959#        3 -- Groupable variable (Continuous, need regrouping by cgi,)
    6060#        4 -- Grouped variable (keep the name space)
    61 #        6 -- Multiple columns 
     61#        6 -- Multiple columns
    6262#        7 -- Variable in standard population dataset
    6363#        8 -- Indicating variable (To be used with type2=3)
    6464#        9 -- Disable variable (To avoid conflict)
    65 #       10 –  Proxy variable
     65#       10   Proxy variable
    6666#============================================================================
    6767#value name_sas Dimension_name_html name_pop prompt type1 type2 length
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/airq/_PM25_annual.cfg

    r22029 r24328  
    11#====================================================================
    22# IBIS-Q Configuration File
    3 # 
     3#
    44# Modifications:
    55# Date        By          Description
     
    99# 11/11/20        Kendall         added 2019, re-worked all query files (simpler)
    1010#====================================================================
    11 #value name_path value_path   
     11#value name_path value_path
    1212d homepath E:\ibisq\qModules30\_EPHT\airq
    1313d workpath E:\ibisq\workpath
     
    1717#d sasdata name of numerator sas data file
    1818#d saspopdata name of denominator sas data file
    19 #d sas_bin path to sas executable, and any arguments 
     19#d sas_bin path to sas executable, and any arguments
    2020#passed to sas on commandline
    2121#r data_where   filter for numerator
    2222#r pop_where    filter for denominator
    23 #r sasstdpop    us 2000 pop weight for direct age adjustment -- 
     23#r sasstdpop    us 2000 pop weight for direct age adjustment --
    2424#for age ajusted rates
    2525#####################################################################
     
    2727d sasdata aq_pm25_daily
    2828d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
    29 r data_where 1999<Year<2020
     29r data_where 2000<=year<=2020
    3030#####################################################################
    31 #these are always here and always the same - they are xml 
     31#these are always here and always the same - they are xml
    3232#heads and tails (wrapper for query response
    3333d response_head_content XMLResponse.head
    3434d response_tail_content XMLResponse.tail
    35 ##################################################################### 
     35#####################################################################
    3636r form 30
    3737r output xml
     
    4141r sas 0
    4242r test 0
    43 #####################################################################
    44 # for type1=num -- SAS data type is numeric
    45 #    char -- SAS data type is Alphabetic
     43###########################################################
     44#value name_sas name_html name_pop prompt type1 type2 length
     45#============================================================================
     46#value =any value, place holder only
     47# name_sas  = SAS variable name in the numerator data set (birth data set)
     48# name_html = html name that specified under <DIMENSION> <NAME> in Module XML
     49# name_pop  = SAS variable name in denominator data set (population data set)
     50# prompt    = Place holder only, could by any character string. (
     51# type1     = CGI data type for SAS variable type (see comment lines 48 & 49)
     52# type2     = CGI data type for CGI regrouping purpose (see comment lines 51-59
     53# length    = used to indicate the variable length in SAS dataset
    4654#
    47 # for type2= 0 -- Categorical variable
    48 #         1 -- Non catergorical (Continuuous) variable
    49 #         3 -- Groupable variable (Continuous, needs regrouping)
    50 #         4 -- Grouped variable (keep the name space)
    51 #         7 -- Variable in standard population dataset
    52 #         8 -- Indicating variable (To be used with type2=8)
    53 #         9 -- Disable variable (To avoid conflict)
    54 #        10 -- proxy variable
    55 # length is used to indicate the variable length in SAS dataset
    56 #####################################################################
    57 #value SASnum_var dimension_name SASdenom_var label type1 type2 len
     55# type1= num -- SAS data type is numeric
     56#        char -- SAS data type is alphabetic
     57#
     58# type2= 0 -- Categorical variable
     59#        1 -- Non catergorical (Continuous) variable
     60#        3 -- Groupable variable (Continuous, need regrouping by cgi,)
     61#        4 -- Grouped variable (keep the name space)
     62#        6 -- Multiple columns
     63#        7 -- Variable in standard population dataset
     64#        8 -- Indicating variable (To be used with type2=3)
     65#        9 -- Disable variable (To avoid conflict)
     66#       10 �  Proxy variable
     67#============================================================================
     68#value name_sas Dimension_name_html name_pop prompt type1 type2 length
    5869
    59 1 daily_max null null DailyLevel num 3 8
     701 daily_max null null conc num 3 8
    6071
    61722 null GeoProxy null Geo num 10 8
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/birth/_BirthEPHT16.cfg

    r20642 r24328  
    1919
    2020d sasdata birth90_16ibisr1
    21 d saspopdata popibiscnty90_18_28jun2019
     21d saspopdata popibiscnty90_19_20oct2020
    2222
    2323d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/birth/_BirthEPHT17.cfg

    r20642 r24328  
    1717
    1818d sasdata birth90_16geo_17ungeo
    19 d saspopdata popibiscnty90_18_28jun2019
     19d saspopdata popibiscnty90_19_20oct2020
    2020
    2121d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/birth/_BirthEPHT18.cfg

    r21880 r24328  
    1717
    1818d sasdata birth90_17geo_18ungeo
    19 d saspopdata popibiscnty90_18_28jun2019
     19d saspopdata popibiscnty90_19_20oct2020
    2020
    2121d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/cancer/_CancerCnty16.cfg

    r21174 r24328  
    1717
    1818d sasdata cancer88_16
    19 d saspopdata popibiscnty90_18_28jun2019
     19d saspopdata popibiscnty90_19_20oct2020
    2020
    2121d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/cancer/_CancerCntySecure16.cfg

    r21174 r24328  
    1717
    1818d sasdata cancer88_16
    19 d saspopdata popibiscnty90_18_28jun2019
     19d saspopdata popibiscnty90_19_20oct2020
    2020
    2121d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/cancer/_CancerCntySecure17.cfg

    r21981 r24328  
    1818
    1919d sasdata cancer88_17
    20 d saspopdata popibiscnty90_18_28jun2019
     20d saspopdata popibiscnty90_19_20oct2020
    2121
    2222d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/cancer/_cancerCnty15.cfg

    r21174 r24328  
    1717                                                                               
    1818d sasdata cancer88_15                                                         
    19 d saspopdata popibiscnty90_18_28jun2019                                       
     19d saspopdata popibiscnty90_19_20oct2020                                       
    2020                                                                               
    2121d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"                 
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/childlead/_ChildLeadAnnual.cfg

    r23213 r24328  
    1818
    1919d sasdata childleadann2020
    20 d saspopdata popibiscnty90_18_28jun2019
     20d saspopdata popibiscnty90_19_20oct2020
    2121
    2222r data_where 2009<=t_year<=2019
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/childlead/_ChildLeadCohort.cfg

    r23213 r24328  
    3333
    3434d sasdata childlead2020
    35 d saspopdata popibiscnty90_18_28jun2019
     35d saspopdata popibiscnty90_19_20oct2020
    3636
    3737r data_where 2009<=BCYear<=2017
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/childleadacs/_ACSCnty18.cfg

    r21881 r24328  
    1616d saspop E:\ibisq\sasData\final\
    1717d sasdata acsdemos12_18
    18 d saspopdata popibiscnty90_18_28jun2019
     18d saspopdata popibiscnty90_19_20oct2020
    1919d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
    2020d data_where fipscode&ne&.
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/ed/NM_Count.def

    r20797 r24328  
    1 f label Count
     1#NM_Count Asthma.def
     2#f label Count
    23f type special
    34#########################################
    45--------BoNdArY--------
    5 1 script
    6 OPTIONS MPRINT MLOGIC SYMBOLGEN;
     61 script NODATE PAGESIZE=4000 NODATE PAGESIZE=4000;
    77OPTION SPOOL;
    88
    99proc summary data=tmp;
    10  var x;
    11  class %cross1% %cross2%;
    12  output out=tmp sum=number;
    13  proc print data=tmp;
    14  run;
     10         var x;
     11         class %cross1%
     12                ?cross2? %cross2%
     13                ;
     14         output out=tmp (drop=_TYPE_ _FREQ_)
     15                sum=number;
     16proc sort data=tmp out=sorted;
     17         by %cross1%
     18                ?cross2? %cross2%
     19                ;
     20  run;
     21proc print data=tmp noobs;
     22         title1 '---------------------------------';
     23         title2 '    tmp -- Numerator Dataset     ';
     24         title3 '---------------------------------';
     25  run;
    1526
    16 /*The Count measure does not need the population
    17   dataset. The following code, through the end of
    18   the macro, is used to compute the RSE for the
    19   data stability indicator.                     */
    20  
    21 %let popflag=0;
     27/*The following code, through the end of the macro,
     28  computes the RSE for the data stability indicator.
     29*/
     30
     31
     32data frame;
     33 set df_%cross1%%cross2%;
     34proc sort data=frame;
     35  by %cross1%
     36         ?cross2? %cross2%
     37         ;
     38proc print data=frame noobs;
     39         title2 '2. ';
     40         title2 '           Data Frame            ';
     41  run;
     42
     43data  tmp;
     44merge frame sorted;
     45   by %cross1%
     46          ?cross2? %cross2%
     47          ;
     48   run;
     49proc  print data=tmp noobs;
     50          title2 'Merged Frame & Numerator Dataset ';
     51   run;
     52
     53
     54*%let popflag=0;
    2255%let flag=0;
    23 %let pflag=0;
    2456?popcross1? %let flag=1;
    25 ?popcross1? %let pflag=1;
    2657?popcross2? %let flag=1;
    27 ?popcross2? %let pflag=2;
    2858?popcross1? ?popcross2? %let flag=2;
    2959
    3060%macro popcross;
    3161
    32 %if &flag=0 %then %do;
    33   proc summary data=poptmp;
    34     var popcount;
    35     output out=pop sum=popnum;
    36   run;
    37   proc sql;
    38     create table rate as
    39     select tmp.*, pop.*
    40     from tmp, pop
    41   quit;
    42 %end;
     62        %if &flag=0 %then %do;
    4363
    44 %if &flag=1 %then %do;
    45   proc summary data=poptmp;
    46     var popcount;
    47     class %popcross1% %popcross2%;
    48     output out=pop sum=popnum;
    49         proc print data=pop;  title2 'POP';
    50   run;
    51         proc sql;
    52             create table rate as
    53             select tmp.*, pop.*,
    54             coalesce
    55             ?popcross1? (tmp.%cross1%, pop.%popcross1%)
    56             ?popcross2? (tmp.%cross2%, pop.%popcross2%)
    57             from pop full join tmp
    58             on
    59             ?popcross1? tmp.%cross1%=pop.%popcross1%;
    60             ?popcross2? tmp.%cross2%=pop.%popcross2%; 
    61         quit;
    62     data rate;
    63      set rate;
    64          %let popflag=1;
    65     run;
    66 %end;
     64                proc summary data=poptmp;
     65                         var popcount;
     66                         output out=pop(drop=_TYPE_ _FREQ_)
     67                                        sum=popnum;
     68                  run;
     69                proc sql;
     70                         create table rate as
     71                         select tmp.*, pop.*
     72                         from tmp, pop
     73                quit;
     74   %end;
    6775
    68 %if &flag=2 %then %do;
    69   proc summary data=poptmp;
    70     var popcount;
    71     class %popcross1% %popcross2%  ;
    72     output out=pop sum=popnum;
    73         proc print data=pop;  title2 'POP';
    74   run;
    75         proc sql;
    76             create table rate as
    77             select tmp.*, pop.*,
    78             coalesce (tmp.%cross1%, pop.%popcross1%),
    79             coalesce (tmp.%cross2%, pop.%popcross2%)
    80             from pop full join tmp
    81             on
     76        %if &flag=1 %then %do;
     77                proc summary data=poptmp;
     78                         var popcount;
     79                         class %popcross1% %popcross2%;
     80                         output out=pop  (drop=_TYPE_ _FREQ_)
     81                                        sum=popnum;
    8282
    83             tmp.%cross1%=pop.%popcross1% and
    84             tmp.%cross2%=pop.%popcross2%; 
    85         quit;
    86     data  rate;
    87       set rate;
    88           %let popflag=2;
    89     run;
    90 %end;
     83                proc sql;
     84                         create table rate as
     85                         select tmp.*, pop.*
     86                         from tmp left join pop
     87                         on
     88                        ?popcross1? tmp.%cross1%=pop.%popcross1%;
     89                        ?popcross2? tmp.%cross2%=pop.%popcross2%;
     90                quit;
     91        %end;
    9192
     93        %if &flag=2 %then %do;
     94                proc summary data=poptmp;
     95                         var popcount;
     96                         class %popcross1% %popcross2%  ;
     97                         output out=pop (drop=_TYPE_ _FREQ_)
     98                         sum=popnum;
     99
     100                proc sql;
     101                         create table rate as
     102                         select tmp.*, pop.*
     103                         from tmp left join pop
     104                         on
     105                         tmp.%cross1%=pop.%popcross1% and
     106                         tmp.%cross2%=pop.%popcross2%; 
     107                quit;
     108        %end;
    92109%mend;
    93 
    94110%popcross;
    95111
    96112
    97 proc print data=rate; title2 'RATE';
     113* Create the output variables for the IBIS xml/map file.;
    98114
    99 %macro criscros;
    100        %if &popflag = 1 and &pflag = 1 %then %do;
    101                %cross1% = _TEMA001;
    102            %end;
    103            %else
    104        %if &popflag = 1 and &pflag = 2 %then %do;
    105                %cross2% = _TEMA001;
    106            %end;   
    107 %mend  criscros;
     115proc print data=rate; title2 'RATE DATA for STABILITY';
    108116
    109 %macro crostwo;
    110        %if &popflag = 2 %then %do;
    111                %cross1% = _TEMA001;
    112                %cross2% = _TEMA002;
    113            %end;
    114 %mend  crostwo;
    115 data tmp;
     117data  tmp;
    116118  set rate;
    117119
    118       %criscros;
    119           %crostwo;
     120          if number=. then n=0; else n=number;
     121          rate=n/popnum;
     122          rateper=rate*100000;
     123          stderr=sqrt(rate*(1-rate)/popnum)*100000;
     124 
     125          if n > 0 then do;
     126                 stderr=sqrt(rate*(1-rate)/popnum)*100000;
     127          end;
     128          if n = 0 then do;
     129                 stderr=sqrt((3/popnum)*(1-(3/popnum))/popnum)*100000;
     130          end;
    120131
    121   if number=. then n=0; else n=number;
    122   rate=n/popnum;
    123   rateper=rate*100000;
    124   stderr=sqrt(rate*(1-rate)/popnum)*100000;
    125   t1=(rateper-(1.96*stderr));
    126   if (t1<0) then t1=0;
    127   LL=put(t1, 8.2);
    128   UL=put((rateper+(1.96*stderr)), 8.2);
    129   LL=compress(LL);
    130   UL=compress(UL);
    131   CI=LL || ' - ' || UL;
     132          t1=(rateper-(1.96*stderr));
     133          if (t1<0) then t1=0;
     134          LL=put(t1, 8.2);
     135          UL=put((rateper+(1.96*stderr)), 8.2);
     136          UL=compress(UL);
     137          LL=compress(LL);
    132138
     139/*******************************************************/
     140/*       Statictical Stability Indicator Redflag       */
     141/* Based on the relative standard error (RSE), redflag */
     142/* values are converted to special characters in       */
     143/* IBIS-View application XSLT files                    */
     144/* xslt\html\query\module\result\ ResultPage.xslt and  */
     145/* Values.xslt                                         */
     146/*******************************************************/
    133147
    134 /*************************************************/
    135 /* Statictical Stability Indicator               */
    136 /* based on the relative standard error (RSE, or */
    137 /* coefficient of variance). Redflag values are  */
    138 /* converted to images or special characters in  */
    139 /* XSLT files (xslt\html\query\module\result\    */
    140 /* ResultPage.xslt and Values.xslt               */
    141 /*************************************************/
    142 
    143   rse=(stderr/rateper);
    144   if rse>.3 then redflag=1; *statistical stability – 1 red flag;
    145   if rse>.5 then redflag=2; *statistical stability - 2 red flags;
    146   if stderr=. then redflag=2; *no variance, n=1;
    147 keep %cross1% %cross2% n popnum rate rateper LL UL rse redflag;
    148 proc print data=tmp; title2 'TMP AGAIN';
     148          if n > 0 then do;
     149                 rse=(stderr/rateper);
     150                 if rse>.3 then redflag=put('Unstable', $12.);
     151                 if rse>.5 then redflag=put('VeryUnstable', $12.);
     152                 if stderr=. then redflag=put('Unstable', $12.);
     153          end;
     154                 if n <= 0 then redflag=put('Unstable', $12.);
    149155run;
    150156
    151 /**********************************************/
    152 /* New Mexico Small Numbers Rule              */
    153 /* For Count, just run the crude rate code but*/
    154 /* only output the N. That way, I can use the */
    155 /* popcount information to know whether to    */
    156 /* suppress the n.                            */
    157 /**********************************************/
     157/*******************************************************/
     158/*       New Mexico Small Numbers Rule                 */
     159/*******************************************************/
    158160
    159  data tmp;
    160  set tmp;
    161  if ((0<n<4) and (popnum<5000)) then do;
    162  n = .A;
    163  rate = .A;
    164  end;
    165 proc print data=tmp; title2 'FINAL'; run;
     161data  tmp;
     162 set  tmp;
     163          if ((0<n<4) and (popnum<5000)) then do;
     164                 n = .A;
     165                 rate = .A;
     166                 LL = put('**', 8.0);
     167                 UL = put('**', 8.0);
     168
     169                 redflag = put('Suppressed', $12.);
     170          end;
     171
     172proc print data=tmp; title2 'Final --  to IBIS View app'; run;
    166173
    167174--------BoNdArY--------
     
    169176#################################################
    170177# definition for output file
    171 f xml_out_map_file XMLNumAsthma.map
     178f xml_out_map_file XMLNum.map
    172179--------BoNdArY--------
    173180f out_detail lbl_not_used__see_xml_out_map_file
     
    175182  redflag 12.0
    176183--------BoNdArY--------
    177 
     184*************** 7. SUPPRESSED VARIABLES ****************;
    178185--------BoNdArY--------
    1791861 suppressed_variables 1
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/ed/NM_CountAsthma.def

    r20959 r24328  
    1 f label Count
     1#NM_Count Asthma.def
     2#f label Count
    23f type special
    34#########################################
    45--------BoNdArY--------
    5 1 script
    6 OPTIONS MPRINT MLOGIC SYMBOLGEN;
     61 script NODATE PAGESIZE=4000 NODATE PAGESIZE=4000;
    77OPTION SPOOL;
    88
    99proc summary data=tmp;
    10  var x;
    11  class %cross1% %cross2%;
    12  output out=tmp sum=number;
    13  proc print data=tmp;
    14  run;
     10         var x;
     11         class %cross1%
     12                ?cross2? %cross2%
     13                ;
     14         output out=tmp (drop=_TYPE_ _FREQ_)
     15                sum=number;
     16proc sort data=tmp out=sorted;
     17         by %cross1%
     18                ?cross2? %cross2%
     19                ;
     20  run;
     21proc print data=tmp noobs;
     22         title1 '---------------------------------';
     23         title2 '    tmp -- Numerator Dataset     ';
     24         title3 '---------------------------------';
     25  run;
    1526
    16 /*The Count measure does not need the population
    17   dataset. The following code, through the end of
    18   the macro, is used to compute the RSE for the
    19   data stability indicator.                     */
    20  
    21 %let popflag=0;
     27/*The following code, through the end of the macro,
     28  computes the RSE for the data stability indicator.
     29*/
     30
     31
     32data frame;
     33 set df_%cross1%%cross2%;
     34proc sort data=frame;
     35  by %cross1%
     36         ?cross2? %cross2%
     37         ;
     38proc print data=frame noobs;
     39         title2 '2. ';
     40         title2 '           Data Frame            ';
     41  run;
     42
     43data  tmp;
     44merge frame sorted;
     45   by %cross1%
     46          ?cross2? %cross2%
     47          ;
     48   run;
     49proc  print data=tmp noobs;
     50          title2 'Merged Frame & Numerator Dataset ';
     51   run;
     52
     53
     54*%let popflag=0;
    2255%let flag=0;
    23 %let pflag=0;
    2456?popcross1? %let flag=1;
    25 ?popcross1? %let pflag=1;
    2657?popcross2? %let flag=1;
    27 ?popcross2? %let pflag=2;
    2858?popcross1? ?popcross2? %let flag=2;
    2959
    3060%macro popcross;
    3161
    32 %if &flag=0 %then %do;
    33   proc summary data=poptmp;
    34     var popcount;
    35     output out=pop sum=popnum;
    36   run;
    37   proc sql;
    38     create table rate as
    39     select tmp.*, pop.*
    40     from tmp, pop
    41   quit;
    42 %end;
     62        %if &flag=0 %then %do;
    4363
    44 %if &flag=1 %then %do;
    45   proc summary data=poptmp;
    46     var popcount;
    47     class %popcross1% %popcross2%;
    48     output out=pop sum=popnum;
    49         proc print data=pop;  title2 'POP';
    50   run;
    51         proc sql;
    52             create table rate as
    53             select tmp.*, pop.*,
    54             coalesce
    55             ?popcross1? (tmp.%cross1%, pop.%popcross1%)
    56             ?popcross2? (tmp.%cross2%, pop.%popcross2%)
    57             from pop full join tmp
    58             on
    59             ?popcross1? tmp.%cross1%=pop.%popcross1%;
    60             ?popcross2? tmp.%cross2%=pop.%popcross2%; 
    61         quit;
    62     data rate;
    63      set rate;
    64          %let popflag=1;
    65     run;
    66 %end;
     64                proc summary data=poptmp;
     65                         var popcount;
     66                         output out=pop(drop=_TYPE_ _FREQ_)
     67                                        sum=popnum;
     68                  run;
     69                proc sql;
     70                         create table rate as
     71                         select tmp.*, pop.*
     72                         from tmp, pop
     73                quit;
     74   %end;
    6775
    68 %if &flag=2 %then %do;
    69   proc summary data=poptmp;
    70     var popcount;
    71     class %popcross1% %popcross2%  ;
    72     output out=pop sum=popnum;
    73         proc print data=pop;  title2 'POP';
    74   run;
    75         proc sql;
    76             create table rate as
    77             select tmp.*, pop.*,
    78             coalesce (tmp.%cross1%, pop.%popcross1%),
    79             coalesce (tmp.%cross2%, pop.%popcross2%)
    80             from pop full join tmp
    81             on
     76        %if &flag=1 %then %do;
     77                proc summary data=poptmp;
     78                         var popcount;
     79                         class %popcross1% %popcross2%;
     80                         output out=pop  (drop=_TYPE_ _FREQ_)
     81                                        sum=popnum;
    8282
    83             tmp.%cross1%=pop.%popcross1% and
    84             tmp.%cross2%=pop.%popcross2%; 
    85         quit;
    86     data  rate;
    87       set rate;
    88           %let popflag=2;
    89     run;
    90 %end;
     83                proc sql;
     84                         create table rate as
     85                         select tmp.*, pop.*
     86                         from tmp left join pop
     87                         on
     88                        ?popcross1? tmp.%cross1%=pop.%popcross1%;
     89                        ?popcross2? tmp.%cross2%=pop.%popcross2%;
     90                quit;
     91        %end;
    9192
     93        %if &flag=2 %then %do;
     94                proc summary data=poptmp;
     95                         var popcount;
     96                         class %popcross1% %popcross2%  ;
     97                         output out=pop (drop=_TYPE_ _FREQ_)
     98                         sum=popnum;
     99
     100                proc sql;
     101                         create table rate as
     102                         select tmp.*, pop.*
     103                         from tmp left join pop
     104                         on
     105                         tmp.%cross1%=pop.%popcross1% and
     106                         tmp.%cross2%=pop.%popcross2%; 
     107                quit;
     108        %end;
    92109%mend;
    93 
    94110%popcross;
    95111
    96112
    97 proc print data=rate; title2 'RATE';
     113* Create the output variables for the IBIS xml/map file.;
    98114
    99 %macro criscros;
    100        %if &popflag = 1 and &pflag = 1 %then %do;
    101                %cross1% = _TEMA001;
    102            %end;
    103            %else
    104        %if &popflag = 1 and &pflag = 2 %then %do;
    105                %cross2% = _TEMA001;
    106            %end;   
    107 %mend  criscros;
     115proc print data=rate; title2 'RATE DATA for STABILITY';
    108116
    109 %macro crostwo;
    110        %if &popflag = 2 %then %do;
    111                %cross1% = _TEMA001;
    112                %cross2% = _TEMA002;
    113            %end;
    114 %mend  crostwo;
    115 data tmp;
     117data  tmp;
    116118  set rate;
    117119
    118       %criscros;
    119           %crostwo;
     120          if number=. then n=0; else n=number;
     121          rate=n/popnum;
     122          rateper=rate*100000;
     123          stderr=sqrt(rate*(1-rate)/popnum)*100000;
     124 
     125          if n > 0 then do;
     126                 stderr=sqrt(rate*(1-rate)/popnum)*100000;
     127          end;
     128          if n = 0 then do;
     129                 stderr=sqrt((3/popnum)*(1-(3/popnum))/popnum)*100000;
     130          end;
    120131
    121   if number=. then n=0; else n=number;
    122   rate=n/popnum;
    123   rateper=rate*100000;
    124   stderr=sqrt(rate*(1-rate)/popnum)*100000;
    125   t1=(rateper-(1.96*stderr));
    126   if (t1<0) then t1=0;
    127   LL=put(t1, 8.2);
    128   UL=put((rateper+(1.96*stderr)), 8.2);
    129   LL=compress(LL);
    130   UL=compress(UL);
    131   CI=LL || ' - ' || UL;
     132          t1=(rateper-(1.96*stderr));
     133          if (t1<0) then t1=0;
     134          LL=put(t1, 8.2);
     135          UL=put((rateper+(1.96*stderr)), 8.2);
     136          UL=compress(UL);
     137          LL=compress(LL);
    132138
     139/*******************************************************/
     140/*       Statictical Stability Indicator Redflag       */
     141/* Based on the relative standard error (RSE), redflag */
     142/* values are converted to special characters in       */
     143/* IBIS-View application XSLT files                    */
     144/* xslt\html\query\module\result\ ResultPage.xslt and  */
     145/* Values.xslt                                         */
     146/*******************************************************/
    133147
    134 /*************************************************/
    135 /* Statictical Stability Indicator               */
    136 /* based on the relative standard error (RSE, or */
    137 /* coefficient of variance). Redflag values are  */
    138 /* converted to images or special characters in  */
    139 /* XSLT files (xslt\html\query\module\result\    */
    140 /* ResultPage.xslt and Values.xslt               */
    141 /*************************************************/
    142 
    143   rse=(stderr/rateper);
    144   if rse>.3 then redflag=1; *statistical stability – 1 red flag;
    145   if rse>.5 then redflag=2; *statistical stability - 2 red flags;
    146   if stderr=. then redflag=2; *no variance, n=1;
    147 keep %cross1% %cross2% n popnum rate rateper LL UL rse redflag;
    148 proc print data=tmp; title2 'TMP AGAIN';
     148          if n > 0 then do;
     149                 rse=(stderr/rateper);
     150                 if rse>.3 then redflag=put('Unstable', $12.);
     151                 if rse>.5 then redflag=put('VeryUnstable', $12.);
     152                 if stderr=. then redflag=put('Unstable', $12.);
     153          end;
     154                 if n <= 0 then redflag=put('Unstable', $12.);
    149155run;
    150156
    151 /**********************************************/
    152 /* New Mexico Small Numbers Rule              */
    153 /* For Count, just run the crude rate code but*/
    154 /* only output the N. That way, I can use the */
    155 /* popcount information to know whether to    */
    156 /* suppress the n.                            */
    157 /**********************************************/
     157/*******************************************************/
     158/*       New Mexico Small Numbers Rule                 */
     159/*******************************************************/
    158160
    159  data tmp;
    160  set tmp;
    161  if ((0<n<4) and (popnum<5000)) then do;
    162  n = .A;
    163  rate = .A;
    164  end;
    165 proc print data=tmp; title2 'FINAL'; run;
     161data  tmp;
     162 set  tmp;
     163          if ((0<n<4) and (popnum<5000)) then do;
     164                 n = .A;
     165                 rate = .A;
     166                 LL = put('**', 8.0);
     167                 UL = put('**', 8.0);
     168
     169                 redflag = put('Suppressed', $12.);
     170          end;
     171
     172proc print data=tmp; title2 'Final --  to IBIS View app'; run;
    166173
    167174--------BoNdArY--------
     
    175182  redflag 12.0
    176183--------BoNdArY--------
    177 
     184*************** 7. SUPPRESSED VARIABLES ****************;
    178185--------BoNdArY--------
    1791861 suppressed_variables 1
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/ed/NM_CrudeRate100K.def

    r21905 r24328  
    1 #f label Crude&Rate
     1#NM_RateCrude10K.def
    22f type special
    3 #f data_where
    4 #f pop_where 1<=region<=5
    53#########################################
    64--------BoNdArY--------
    751 script
    8 OPTIONS MPRINT MLOGIC SYMBOLGEN;
     6OPTIONS MPRINT MLOGIC SYMBOLGEN NONUMBER NODATE PAGESIZE=4000;
    97OPTION SPOOL;
     8
     9%LET MULTIPLIER=100000;
     10
     11**************** 1. Numerator data, TMP *******;
    1012
    1113proc summary data=tmp;
    1214 var x;
    13  class %cross1% %cross2%;
    14  output out=tmp sum=number;
    15  run;
     15         class %cross1%
     16         ?cross2? %cross2%
     17         ;
     18         output out=tmp (drop=_TYPE_ _FREQ_)
     19         sum=number;
     20
     21proc sort data=tmp out=sorted; by %cross1%
     22         ?cross2? %cross2%
     23         ;
     24  run;
     25
     26proc print data=tmp noobs;
     27         title1 '----------------------------------';
     28         title2 '1.     Numerator data -- TMP      ';
     29         title3 '----------------------------------';
     30  run;
     31
     32**************** 2. %data_frame% ***************;
     33
     34        data frame;
     35                set df_%cross1% %cross2%;
     36                run;
     37        proc sort data=frame; by %cross1%
     38                ?cross2? %cross2%
     39                ; run;
     40        proc print data=frame noobs;
     41                title2 '2. Data Frame';
     42                run;
     43               
     44        data tmp;
     45                merge frame sorted;   *must list frame dataset first, then tmp;
     46                by %cross1%
     47                   ?cross2? %cross2%
     48                ;
     49                run;
     50        proc print data=tmp noobs;
     51                 title2 '2.  Framed Numerator data -- TMP  ';
     52                run;
     53
     54
     55****** Join pop denominators framed data. ******;
    1656
    1757%let flag=0;
     
    2363
    2464%if &flag=0 %then %do;
    25   proc summary data=poptmp;
    26     var popcount;
    27     output out=pop sum=popnum;
    28   run;
    29   proc sql;
    30     create table rate as
    31     select tmp.*, pop.*
    32     from tmp, pop
    33   quit;
     65        proc summary data=poptmp;
     66                 var popcount;
     67                 output out=pop (drop=_TYPE_ _FREQ_)
     68                                sum=popnum;
     69          run;
     70
     71        proc print data=pop;
     72                 title2 '3.     Population Denominators    ';
     73          run;
     74
     75        proc sql;
     76                 create table rate as
     77                 select tmp.*, pop.*
     78                 from tmp, pop
     79        quit;
    3480%end;
    3581
    3682%if &flag=1 %then %do;
    37   proc summary data=poptmp;
    38     var popcount;
    39     class %popcross1% %popcross2%;
    40     output out=pop sum=popnum;
    41   run;
    42   proc sql;
    43     create table rate as
    44     select tmp.*, pop.*
    45     from tmp, pop
    46     where
    47     ?popcross1? tmp.%cross1%=pop.%popcross1%;
    48     ?popcross2? tmp.%cross2%=pop.%popcross2%; 
    49   quit;
     83        proc summary data=poptmp;
     84                 var popcount;
     85                 class %popcross1% %popcross2%;
     86                 output out=pop (drop=_TYPE_ _FREQ_)
     87                                sum=popnum;
     88        proc print data=pop;
     89                 title2 '3.     Population Denominators    ';
     90          run;
     91
     92        proc sql;
     93                 create table rate as
     94                        select tmp.*, pop.*
     95                        from tmp left join pop
     96                        on
     97                        ?popcross1? tmp.%cross1%=pop.%popcross1%;
     98                        ?popcross2? tmp.%cross2%=pop.%popcross2%; 
     99        quit;
    50100%end;
    51101
    52102%if &flag=2 %then %do;
    53   proc summary data=poptmp;
    54     var popcount;
    55     class %popcross1% %popcross2%  ;
    56     output out=pop sum=popnum;
    57   run;
    58   proc sql;
    59     create table rate as
    60     select tmp.*, pop.*
    61     from tmp, pop
    62     where tmp.%cross1%=pop.%popcross1% and
    63     tmp.%cross2%=pop.%popcross2%;
    64   quit;
    65 %end;
     103        proc summary data=poptmp;
     104                 var popcount;
     105                 class %popcross1% %popcross2%  ;
     106                 output out=pop (drop=_TYPE_ _FREQ_)
     107                                sum=popnum;
     108        proc print data=pop;
     109                 title2 '3.  Numerator & Denominators  ';
     110  run;
     111        proc sql;
     112            create table rate as
     113            select tmp.*, pop.*
     114            from tmp full join pop
     115            on
     116            tmp.%cross1%=pop.%popcross1% and
     117            tmp.%cross2%=pop.%popcross2%; 
     118        quit;
     119%end;
    66120%mend;
    67121%popcross;
    68122
    69 data tmp;
    70   set rate;
    71   rate=number/popnum;
    72   rateper=(rate*100000);
    73   stderr=sqrt(rate*(1-rate)/popnum)*100000;
    74   t1=(rateper-(1.96*stderr));
    75   if (t1<0) then t1=0;
    76   LCL=put(t1, 8.2);
    77   UCL=put((rateper+(1.96*stderr)), 8.2);
    78   LCL=compress(LCL);
    79   UCL=compress(UCL);
    80   CI=LCL || ' - ' || UCL;
    81   n=number;
    82 
    83   *redflag;
    84   /*redflag is the statistical stability indicator,
    85   based on the relative standard error (RSE, or
    86   coefficient of variance). Redflag values are
    87   converted to images or special characters in XSLT
    88   files (xslt\html\query\module\result\ResultPage.xslt
    89   and ...Values.xslt*/
    90 
    91   rse=(stderr/rateper);
    92   if rse>.3 then redflag=1; *statistical stability – 1 red flag;
    93   if rse>.5 then redflag=2; *statistical stability - 2 red flags;
    94   if stderr=. then redflag=2; *no variance, n=1;
     123proc print data=rate;
     124         title2 '3.       Rate Ready Data          ';
     125  run;
     126
     127
     128******************  Rates data.  ***************;
     129
     130data  rates;
     131  set rate;
     132          if number=. then n=0; else n=number;
     133          rate=n/popnum;
     134          if n > 0 then do;
     135                 rateper=(rate*&MULTIPLIER);
     136                 stderr=sqrt(rate*(1-rate)/popnum)*&MULTIPLIER;
     137          end;
     138          if n <= 0 then do;
     139                 rateper=0;
     140                 stderr=sqrt((3/popcount)*(1-(3/popnum))/popnum)*&MULTIPLIER;
     141          end;
     142          t1=(rateper-(1.96*stderr));
     143          if (t1<0) then t1=0;
     144          LCL=put(t1, 8.2);
     145          UCL=put((rateper+(1.96*stderr)), 8.2);
     146          LCL=compress(LCL);
     147          UCL=compress(UCL);
     148
     149
     150******** Statistical Stability Redflag. ********;
     151/*Redflag is the statistical stability indicator,
     152  based on RSE converted to images or special
     153  characters in XSLT files ResultPage.xslt and
     154  Values.xslt (xslt\html\query\module\result\).*/
     155
     156          if n > 0 then do;
     157                 rse=(stderr/rateper);
     158                 redflag=put('', $12.); 
     159                 if rse>.3 then redflag=put('Unstable', $12.);
     160                 if rse>.5 then redflag=put('VeryUnstable', $12.);
     161                 if stderr=. then redflag=put('Unstable', $12.);
     162          end;
     163          if n <= 0 then redflag=put('Unstable', $12.);
     164                *no variance, n=0, rse=div by zero;
    95165run;
    96 proc print data=tmp; title 'almost final tmp'; run;
    97 
    98 data tmp;
    99   set tmp;
    100   /* New Mexico Small Numbers Rule */
    101   if ((0<n<4) and (popnum<5000)) then do;
    102     n = .A;
    103     rateper = .A;
    104 end;
    105 proc print data=tmp; title 'final tmp'; run;
     166
     167proc print data=rates;
     168         title2 '4.          Rates Data            ';
     169  run;
     170
     171
     172*********  New Mexico Small Numbers Rule  ******;
     173
     174data  tmp;
     175  set rates;
     176          if ((0<n<4) and (popnum<5000)) then do;
     177                 n = .A;
     178                 LCL = put('**', 8.0);
     179                 UCL = put('**', 8.0);
     180                 redflag = put('Suppressed', $12.);
     181          end;
     182          if popnum=. then redflag=put('', $12.);
     183   run;
     184
     185proc print data=tmp;
     186         title2 '5.          Final Data            '; run;
    106187
    107188--------BoNdArY--------
    108189f out_variable rateper
    109190# definition for output file
    110 f xml_out_map_file XMLRate100KNDLCLUCL.map
     191f xml_out_map_file XMLRate10KNDLCLUCL.map
    111192--------BoNdArY--------
    112193f out_detail lbl_not_used__see_xml_out_map_file
     
    114195  n 15.0
    115196  popnum 15.0
    116   LCL 15.1
    117   UCL 15.1
     197  LCL 15.3
     198  UCL 15.3
    118199  redflag 15.0
    119200--------BoNdArY--------
    120201--------BoNdArY--------
    121 1 suppressed_variables 4
     2021 suppressed_variables 2
     203  rateper
    122204  n
    123   rateper
    124   LCL
    125   UCL
    126 --------BoNdArY--------
     205--------BoNdArY--------
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/ed/NM_CrudeRate10k.def

    r23213 r24328  
    1 f label Crude&Rate
     1#NM_RateCrude10K.def
    22f type special
    3 #f data_where
    4 #f pop_where 1<=region<=5
    53#########################################
    64--------BoNdArY--------
    751 script
    8 OPTIONS MPRINT MLOGIC SYMBOLGEN;
     6OPTIONS MPRINT MLOGIC SYMBOLGEN NONUMBER NODATE PAGESIZE=4000;
    97OPTION SPOOL;
     8
     9%LET MULTIPLIER=10000;
     10
     11**************** 1. Numerator data, TMP *******;
    1012
    1113proc summary data=tmp;
    1214 var x;
    13  class %cross1% %cross2%;
    14  output out=tmp sum=number;
    15  
    16 proc print data=tmp; title1 ' '; title2 'TMP';
    17  run;
    18 
    19  
    20 %let popflag=0;
     15         class %cross1%
     16         ?cross2? %cross2%
     17         ;
     18         output out=tmp (drop=_TYPE_ _FREQ_)
     19         sum=number;
     20
     21proc sort data=tmp out=sorted; by %cross1%
     22         ?cross2? %cross2%
     23         ;
     24  run;
     25
     26proc print data=tmp noobs;
     27         title1 '----------------------------------';
     28         title2 '1.     Numerator data -- TMP      ';
     29         title3 '----------------------------------';
     30  run;
     31
     32**************** 2. %data_frame% ***************;
     33
     34        data frame;
     35                set df_%cross1% %cross2%;
     36                run;
     37        proc sort data=frame; by %cross1%
     38                ?cross2? %cross2%
     39                ; run;
     40        proc print data=frame noobs;
     41                title2 '2. Data Frame';
     42                run;
     43               
     44        data tmp;
     45                merge frame sorted;   *must list frame dataset first, then tmp;
     46                by %cross1%
     47                   ?cross2? %cross2%
     48                ;
     49                run;
     50        proc print data=tmp noobs;
     51                 title2 '2.  Framed Numerator data -- TMP  ';
     52                run;
     53
     54
     55****** Join pop denominators framed data. ******;
     56
    2157%let flag=0;
    22 %let pflag=0;
    2358?popcross1? %let flag=1;
    24 ?popcross1? %let pflag=1;
    2559?popcross2? %let flag=1;
    26 ?popcross2? %let pflag=2;
    27 
    2860?popcross1? ?popcross2? %let flag=2;
    2961
     
    3163
    3264%if &flag=0 %then %do;
    33   proc summary data=poptmp;
    34     var popcount;
    35     output out=pop sum=popnum;
    36   run;
    37  
    38   proc print data=pop;  title2 'POP';
    39   run;
    40  
    41   proc sql;
    42     create table rate as
    43     select tmp.*, pop.*
    44     from tmp, pop
    45   quit;
     65        proc summary data=poptmp;
     66                 var popcount;
     67                 output out=pop (drop=_TYPE_ _FREQ_)
     68                                sum=popnum;
     69          run;
     70
     71        proc print data=pop;
     72                 title2 '3.     Population Denominators    ';
     73          run;
     74
     75        proc sql;
     76                 create table rate as
     77                 select tmp.*, pop.*
     78                 from tmp, pop
     79        quit;
    4680%end;
    4781
    4882%if &flag=1 %then %do;
    49   proc summary data=poptmp;
    50     var popcount;
    51     class %popcross1% %popcross2%;
    52     output out=pop sum=popnum;
    53         proc print data=pop;  title2 'POP';
     83        proc summary data=poptmp;
     84                 var popcount;
     85                 class %popcross1% %popcross2%;
     86                 output out=pop (drop=_TYPE_ _FREQ_)
     87                                sum=popnum;
     88        proc print data=pop;
     89                 title2 '3.     Population Denominators    ';
     90          run;
     91
     92        proc sql;
     93                 create table rate as
     94                        select tmp.*, pop.*
     95                        from tmp left join pop
     96                        on
     97                        ?popcross1? tmp.%cross1%=pop.%popcross1%;
     98                        ?popcross2? tmp.%cross2%=pop.%popcross2%; 
     99        quit;
     100%end;
     101
     102%if &flag=2 %then %do;
     103        proc summary data=poptmp;
     104                 var popcount;
     105                 class %popcross1% %popcross2%  ;
     106                 output out=pop (drop=_TYPE_ _FREQ_)
     107                                sum=popnum;
     108        proc print data=pop;
     109                 title2 '3.  Numerator & Denominators  ';
    54110  run;
    55111        proc sql;
    56112            create table rate as
    57             select tmp.*, pop.*,
    58             coalesce
    59             ?popcross1? (tmp.%cross1%, pop.%popcross1%)
    60             ?popcross2? (tmp.%cross2%, pop.%popcross2%)
    61             from pop full join tmp
     113            select tmp.*, pop.*
     114            from tmp full join pop
    62115            on
    63 
    64 
    65             ?popcross1? tmp.%cross1%=pop.%popcross1%;
    66             ?popcross2? tmp.%cross2%=pop.%popcross2%; 
    67         quit; 
    68     data rate;
    69      set rate;
    70          %let popflag=1;
    71     run;
    72 %end;
    73 
    74 %if &flag=2 %then %do;
    75   proc summary data=poptmp;
    76     var popcount;
    77     class %popcross1% %popcross2%  ;
    78     output out=pop sum=popnum;
    79   proc print data=pop;  title2 'POP';
    80   run;
    81         proc sql;
    82             create table rate as
    83             select tmp.*, pop.*,
    84             coalesce (tmp.%cross1%, pop.%popcross1%),
    85             coalesce (tmp.%cross2%, pop.%popcross2%)
    86             from pop full join tmp
    87             on
    88 
    89116            tmp.%cross1%=pop.%popcross1% and
    90117            tmp.%cross2%=pop.%popcross2%; 
    91         quit;
    92     data  rate;
    93       set rate;
    94           %let popflag=2;
    95     run;
    96 
    97 %end;
     118        quit;
     119%end;
    98120%mend;
    99121%popcross;
    100122
    101 proc print data=rate; title2 'RATE';
    102 
    103 %macro criscros;
    104        %if &popflag = 1 and &pflag = 1 %then %do;
    105                %cross1% = _TEMA001;
    106            %end;
    107            %else
    108        %if &popflag = 1 and &pflag = 2 %then %do;
    109                %cross2% = _TEMA001;
    110            %end;   
    111 %mend  criscros;
    112 
    113 %macro crostwo;
    114        %if &popflag = 2 %then %do;
    115                %cross1% = _TEMA001;
    116                %cross2% = _TEMA002;
    117            %end;
    118 %mend  crostwo;
    119 
    120 data tmp;
     123proc print data=rate;
     124         title2 '3.       Rate Ready Data          ';
     125  run;
     126
     127
     128******************  Rates data.  ***************;
     129
     130data  rates;
    121131  set rate;
    122       %criscros;
    123           %crostwo;
    124 
    125   if number=. then n=0; else n=number;
    126   rate=n/popnum;
    127   rateper=(rate*10000);
    128   stderr=sqrt(rate*(1-rate)/popnum)*10000;
    129   t1=(rateper-(1.96*stderr));
    130   if (t1<0) then t1=0;
    131   LCL=put(t1, 8.2);
    132   UCL=put((rateper+(1.96*stderr)), 8.2);
    133   LCL=compress(LCL);
    134   UCL=compress(UCL);
    135   CI=LCL || ' - ' || UCL;
    136 
    137 
    138   *redflag;
    139   /*redflag is the statistical stability indicator,
    140   based on the relative standard error (RSE, or
    141   coefficient of variance). Redflag values are
    142   converted to images or special characters in XSLT
    143   files (xslt\html\query\module\result\ResultPage.xslt
    144   and ...Values.xslt*/
    145 
    146   rse=(stderr/rateper);
    147   if rse>.3 then redflag=1; *statistical stability – 1 red flag;
    148   if rse>.5 then redflag=2; *statistical stability - 2 red flags;
    149   if stderr=. then redflag=2; *no variance, n=1;
     132          if number=. then n=0; else n=number;
     133          rate=n/popnum;
     134          if n > 0 then do;
     135                 rateper=(rate*&MULTIPLIER);
     136                 stderr=sqrt(rate*(1-rate)/popnum)*&MULTIPLIER;
     137          end;
     138          if n <= 0 then do;
     139                 rateper=0;
     140                 stderr=sqrt((3/popcount)*(1-(3/popnum))/popnum)*&MULTIPLIER;
     141          end;
     142          t1=(rateper-(1.96*stderr));
     143          if (t1<0) then t1=0;
     144          LCL=put(t1, 8.2);
     145          UCL=put((rateper+(1.96*stderr)), 8.2);
     146          LCL=compress(LCL);
     147          UCL=compress(UCL);
     148
     149
     150******** Statistical Stability Redflag. ********;
     151/*Redflag is the statistical stability indicator,
     152  based on RSE converted to images or special
     153  characters in XSLT files ResultPage.xslt and
     154  Values.xslt (xslt\html\query\module\result\).*/
     155
     156          if n > 0 then do;
     157                 rse=(stderr/rateper);
     158                 redflag=put('', $12.); 
     159                 if rse>.3 then redflag=put('Unstable', $12.);
     160                 if rse>.5 then redflag=put('VeryUnstable', $12.);
     161                 if stderr=. then redflag=put('Unstable', $12.);
     162          end;
     163          if n <= 0 then redflag=put('Unstable', $12.);
     164                *no variance, n=0, rse=div by zero;
    150165run;
    151 proc print data=tmp; title 'almost final tmp'; run;
    152 
    153 data tmp;
    154   set tmp;
    155   /* New Mexico Small Numbers Rule */
    156   if ((0<n<4) and (popnum<5000)) then do;
    157     n = .A;
    158     rateper = .A;
    159     LCL = put('**', 8.0);
    160     UCL = put('**', 8.0);
    161 end;
    162 proc print data=tmp; title 'final tmp'; run;
     166
     167proc print data=rates;
     168         title2 '4.          Rates Data            ';
     169  run;
     170
     171
     172*********  New Mexico Small Numbers Rule  ******;
     173
     174data  tmp;
     175  set rates;
     176          if ((0<n<4) and (popnum<5000)) then do;
     177                 n = .A;
     178                 LCL = put('**', 8.0);
     179                 UCL = put('**', 8.0);
     180                 redflag = put('Suppressed', $12.);
     181          end;
     182          if popnum=. then redflag=put('', $12.);
     183   run;
     184
     185proc print data=tmp;
     186         title2 '5.          Final Data            '; run;
    163187
    164188--------BoNdArY--------
     
    171195  n 15.0
    172196  popnum 15.0
    173   LCL 15.1
    174   UCL 15.1
     197  LCL 15.3
     198  UCL 15.3
    175199  redflag 15.0
    176200--------BoNdArY--------
    177201--------BoNdArY--------
    178 1 suppressed_variables 4
     2021 suppressed_variables 2
     203  rateper
    179204  n
    180   rateper
    181   LCL
    182   UCL
    183 --------BoNdArY--------
     205--------BoNdArY--------
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/ed/NM_RateAA10K.def

    r21905 r24328  
    1515OPTION SPOOL;
    1616
     17        %LET MULTIPLIER=1000;
     18        %LET STDVAR=agepop;
     19        %LET NCAT=11;
    1720 ************************** 1. TMP ******************************;
    1821 * The dataset 'tmp' is the numerator dataset that has been read ;
    1922 * in already by ibis-q. Any filters have already been applied.  ;
    2023 * The proc summary counts deaths by agepop, cross1, and cross2. ;
    21  * The variable "x" must be in the dataset, it is set equal to 1.;
     24 * The variable "x" must be in the dataset, it is set equal to 1.;
     25 * Use SAS=3 in your query application URL to see the 'print' results at each step. ;
    2226 ****************************************************************;
    2327        proc summary data=tmp;
    2428                var x;
    25                 class agepop %cross1%
     29                class  &STDVAR %cross1%
    2630                ?cross2? %cross2%
    2731                ;
    28                 output out=tmp sum=count;
    29         proc sort data=tmp; by agepop %cross1%
     32                output out=tmp (drop=_TYPE_ _FREQ_) sum=count;
     33
     34        proc sort data=tmp; by &STDVAR %cross1%
    3035                ?cross2? %cross2%
    3136                ; run;
     
    4550                retain count 0;
    4651                do
    47                         agepop= 1 to 11 by 1 ;
     52                        &STDVAR= 1 to &NCAT by 1 ;
    4853                        output;
    4954                end;
     
    5560        * then crosses by sex), there will be a total row for the cross1 and cross2 values.  ;
    5661        * So in a later step, the new_frame dataset is sorted with a "nodupkey" option to    ;
    57         * remove the additional dimension total values.                                      ;
     62        * remove the additional dimension total values.;
    5863        *************************************************************************************;
     64       
    5965        data crosstotalframe;
    6066                retain count 0;
     
    7682        quit;
    7783        proc sort data=new_frame nodupkey;
    78                 by %cross1%
    79                    ?cross2? %cross2%
    80                    agepop;
     84          by %cross1%
     85                 ?cross2? %cross2%
     86                 &STDVAR;
    8187                run;
    8288        proc print data=new_frame noobs; title2 'new_frame, sorted with nodupkey'; run;
    83         proc sort data=tmp; by %cross1% %cross2% agepop; run;
    84         data newtmp;
    85                 merge new_frame tmp;  *must list frame dataset first, then tmp;
    86                 by %cross1% %cross2% agepop;
    87                 drop _TYPE_ _FREQ_ ;
     89        proc sort data=tmp out=sorted;
     90          by %cross1% %cross2% &STDVAR; run;
     91        data  newtmp;
     92        merge new_frame sorted;  * tmp, must list frame dataset first, then tmp;
     93          by  %cross1% %cross2% &STDVAR;
     94                  drop _TYPE_ _FREQ_ ;
    8895        run;
    8996
     
    100107 * cross1 and cross2 totals to -1.                               ;
    101108 ****************************************************************;
    102         data poptmp; format agepop %popcross1% %popcross2% 8.; set poptmp; run; 
     109        data poptmp; format &STDVAR %popcross1% %popcross2% 8.; set poptmp; run; 
    103110        proc summary data=poptmp;
    104111                var popcount;
    105                 class agepop  %popcross1% %popcross2%;
    106                 output out=pop sum=popcount;
     112                class &STDVAR  %popcross1% %popcross2%;
     113                output out=pop (drop=_TYPE_ _FREQ_) sum=popcount;
    107114        run;
    108115        data pop;
     
    112119                   title2 '3. POP - denominator dataset';
    113120        run;
    114  
     121
    115122 *********************** 4. NUMBERS *****************************;
    116123 * Join tmp, pop.                                                ;
    117124 * -1 values are left of out NUMBERS because stdpop doesn't have ;
    118  * any -1 values.                                                ;
     125 * any -1 values.     ;
     126 * The popcross flag is not used here because the use of the age grouping variable   ;
     127 * allows for each of the following rows of the join statement to begin with "and".  ;
    119128 ****************************************************************;
    120129        proc sql;
     
    122131                select tmp.*, pop.*
    123132                from tmp left join pop
    124                 on tmp.agepop=pop.agepop
     133                on tmp.&STDVAR=pop.&STDVAR
    125134                ?popcross1? and tmp.%cross1%=pop.%popcross1% 
    126135                ?popcross2? and tmp.%cross2%=pop.%popcross2%
     
    129138        data numbers;
    130139                set numbers;
    131                 if agepop^=.; *get rid of total rows to stop doubling from pop proc summary;
     140                if &STDVAR^=.; *get rid of total rows to stop doubling from pop proc summary;
    132141                if %cross1%=. then %cross1%=-1;
    133142                ?cross2? if %cross2%=. then %cross2%=-1;
     
    153162 ****************************************************************;
    154163        data stdwgt;
     164                format agevar $12.;
    155165                informat stdwgt 7.6;
    156166                set pop.stdwgts;
    157167                *pop libname is set in .cfg file with the saspop statement;
    158                 if (stdvar='agepop'); *stdvar name is case-sensitive;
    159                 keep agepop stdwgt;
     168                if (stdvar="&STDVAR");
     169                keep &STDVAR stdwgt;
    160170        run;
    161171        proc print data=stdwgt noobs; 
     
    171181                select numbers.*, stdwgt.stdwgt
    172182                from numbers left join stdwgt
    173                 on numbers.agepop=stdwgt.agepop
     183                on numbers.&STDVAR=stdwgt.&STDVAR
    174184                ;
    175185        quit;
     
    207217                proc sort data=aarate; by %cross1% %cross2%; run;
    208218        proc print data=aarate noobs;
    209                 title2 '8. AARATE - summed across weighted agepop cross-products to get AA rate and';
     219                title2 '8. AARATE - summed across weighted &STDVAR cross-products to get AA rate and';
    210220                title3 'rate variance within each cross-by var';
    211221      run;
     
    216226 * coded back to '.' after this step.                            ;
    217227 ****************************************************************;
    218         data tmp;
     228
     229        data rate;
    219230                set aarate;
    220231                if %cross1%=-1 then %cross1%=.;         *Recode the statewide totals.;
     
    222233               
    223234                if (count>0) then do;
    224                                 rateper=(aarate*10000);
     235                                rateper=(aarate*&MULTIPLIER);
    225236                                rate_se=sqrt(aarate_var);
    226                                 stderr=(rate_se*10000);
     237                                stderr=(rate_se*&MULTIPLIER);
    227238                        end;
    228239                if (count<=0) then do;
     
    230241
    231242                                rateper=0;
    232                                 stderr=sqrt((3/popcount)*(1-(3/popcount))/popcount)*10000;
     243                                stderr=sqrt((3/popcount)*(1-(3/popcount))/popcount)*&MULTIPLIER;
    233244                        end;
    234245                t1=(rateper-(1.96*stderr));
     
    247258 * (xslt\html\query\module\result\ResultPage.xslt, ...Values.xslt ;
    248259 *****************************************************************;
     260
    249261                if count>0 then do;
    250262                        rse=(stderr/rateper);
    251                         redflag=put('-', $14.);
    252                         if rse>.3 then redflag=put('Unstable', $14.);
    253                         if rse>.5 then redflag=put('Very Unstable', $14.);
    254                         if stderr=. then redflag=put('Unstable', $14.);
     263                        redflag=put(' ', $12.);
     264                        if rse>.3 then redflag=put('Unstable', $12.);
     265                        if rse>.5 then redflag=put('Very Unstable', $12.);
     266                        if stderr=. then redflag=put('Unstable', $12.);
    255267                end;
    256                 if count<=0 then redflag=put('Unstable', $14.);  *no variance, n=0, rse=div by zero;
     268                if count<=0 then redflag=put('Unstable', $12.);  *no variance, n=0, rse=div by zero;
    257269        run;
    258270
     
    269281 * code at the end of this file to work.                            ;
    270282 *******************************************************************;
     283
    271284        data tmp;
    272                 set tmp;
    273                 if ((0<n<4) and (popcount<5000)) then do;
     285                set rate;
     286                if ((0<n<4) and (.<popcount<5000)) then do;
    274287                        n = .A;
    275288                        rateper = .A;
    276289                        LL = put('**', 8.0);
    277290                        UL = put('**', 8.0);
     291                        *only 1 val attr allowed, over-write redflag if suppressed;
     292                        redflag = put('Suppressed', $12.);
    278293                end;
    279294        proc print data=tmp noobs;  title2 '11. TMP - final dataset to pass to IBIS View app';
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/ed/XMLNumAsthma.map

    r20959 r24328  
    111 MEASURE NumAsthma
    2 2 VALUE_ATTRIBUTE #
     22 VALUE_ATTRIBUTE_NAME
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/ed/XMLNumCO.map

    r20959 r24328  
    111 MEASURE NumCO
    2 2 VALUE_ATTRIBUTE #
     22 VALUE_ATTRIBUTE_NAME
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/ed/XMLNumCOPD.map

    r20959 r24328  
    111 MEASURE NumCOPD
    2 2 VALUE_ATTRIBUTE #
     22 VALUE_ATTRIBUTE_NAME
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/ed/XMLNumHeat.map

    r20959 r24328  
    111 MEASURE NumHeat
    2 2 VALUE_ATTRIBUTE #
     22 VALUE_ATTRIBUTE_NAME
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/ed/XMLNumMI.map

    r20959 r24328  
    111 MEASURE NumMI
    2 2 VALUE_ATTRIBUTE #
     22 VALUE_ATTRIBUTE_NAME
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/ed/XMLRate100KNDLCLUCL.map

    r20959 r24328  
    444 ANCILLARY_VALUE LowerConfidenceLimit
    555 ANCILLARY_VALUE UpperConfidenceLimit
    6 6 VALUE_ATTRIBUTE #
     66 VALUE_ATTRIBUTE_NAME
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/ed/XMLRate10KNDLCLUCL.map

    r20959 r24328  
    444 ANCILLARY_VALUE LowerConfidenceLimit
    555 ANCILLARY_VALUE UpperConfidenceLimit
    6 6 VALUE_ATTRIBUTE #
     66 VALUE_ATTRIBUTE_NAME
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/hidd/XMLNumAsthma.map

    r20958 r24328  
    111 MEASURE NumAsthma
    2 2 VALUE_ATTRIBUTE #
     22 VALUE_ATTRIBUTE_NAME
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/hidd/XMLNumCO.map

    r20958 r24328  
    111 MEASURE NumCO
    2 2 VALUE_ATTRIBUTE #
     22 VALUE_ATTRIBUTE_NAME
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/hidd/XMLNumCOPD.map

    r20958 r24328  
    111 MEASURE NumCOPD
    2 2 VALUE_ATTRIBUTE #
     22 VALUE_ATTRIBUTE_NAME
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/hidd/XMLNumHeat.map

    r20958 r24328  
    111 MEASURE NumHeat
    2 2 VALUE_ATTRIBUTE #
     22 VALUE_ATTRIBUTE_NAME
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/hidd/XMLNumMI.map

    r20958 r24328  
    111 MEASURE NumMI
    2 2 VALUE_ATTRIBUTE #
     22 VALUE_ATTRIBUTE_NAME
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/hidd/XMLRate100KNDLCLUCL.map

    r20958 r24328  
    444 ANCILLARY_VALUE LowerConfidenceLimit
    555 ANCILLARY_VALUE UpperConfidenceLimit
    6 6 VALUE_ATTRIBUTE #
     66 VALUE_ATTRIBUTE_NAME
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/hidd/XMLRate10KNDLCLUCL.map

    r20958 r24328  
    444 ANCILLARY_VALUE LowerConfidenceLimit
    555 ANCILLARY_VALUE UpperConfidenceLimit
    6 6 VALUE_ATTRIBUTE #
     66 VALUE_ATTRIBUTE_NAME
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/hidd/_HIDD.cfg

    r23695 r24328  
    2828d saspop E:\ibisq\sasData\final\
    2929d sasdata hiddepht2020
    30 #d saspopdata popibiscnty90_18_28jun2019
    31 d saspopdata popibiscnty90_20_02aug2021
     30#d saspopdata popibiscnty90_19_20oct2020
     31d saspopdata popibiscnty90_20_04nov2021
    3232d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe" -MEMMAXSZ 5G -MEMCACHE 4 -MEMLIB
    3333#r sas_bin sas&-memsize&0
     
    5050r sas 0
    5151r test 0
     52r spvar1 UserCode
    5253#r small_num 4
    5354#r small_pop 20
     
    1011023 sex Sex Sex Sex num 0 8
    102103
    103 2 null EthProxy null Ethnicity&Proxy num 10 4
    104 4 hispeth HispEth null Ethnicity num 0 8
    105 4 biology EthHerit null Decendancy num 0 8
     1044 null EthProxy null Ethnicity&Proxy num 10 8
     1054 hispeth HispEth hisp Ethnicity num 0 8
     1064 biology EthHerit dohraceth Decendancy num 0 8
    1061074 NMDOHRaceEth NMDOHEthHerit null NMRace&Eth num 0 8
    107108
     
    141142
    1421435 null UserQProxy null Diag&Proxy char 10 8
    143 5 UserCode DiagUser null Diag&ICD-9&Codes char 3 8
     1445 UserCode DiagUser null Diag&ICD-CM&Codes char 3 8
    144145#5 UserCode Diag10 null Diag&ICD-9&Codes char 3 8
    145146#5 UserECode Ecode9 null ECode&ICD-9&Codes char 3 8
     
    16316410 Intentional Intentional null Intention num 0 8
    16416510 co_intent CO_Intent null CO&Poisoning&EPHT&Categories num 0 8
    165 #10 Fire Fire null Fire&Related num 0 8
    166 
    167 #11 Daily sum, mean, minimum and maximum
    168 #11 null StatProxy null Stat&Proxy num 10 3
    169 #11 asthmaadmits
    170 #11 MeanAsthma
    171 #11 maxasthma
    172 #11 minasthma
    173 
    174166#7 stdyr stdpop null Standard&Population num 7 8
    175167# The popcount variable is only referenced in the .DEF files ====================
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/hidd/_HIDD_MITX.cfg

    r21895 r24328  
    1919d saspop E:\ibisq\sasData\final\
    2020d sasdata hiddephtmitx0619
    21 #d saspopdata popibiscnty90_18_28jun2019
     21#d saspopdata popibiscnty90_19_20oct2020
    2222d saspopdata popibiscnty90_19_20oct2020
    2323d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe" -MEMMAXSZ 5G -MEMCACHE 4 -MEMLIB
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_EPHT/mortmc/_MortMC.cfg

    r22345 r24328  
    1212# 6/17/2020   bw                  tuned for 3.0
    1313# 1/7/2021    bw                  2019 data
     14# 10/29/2021  bw                  2020 data
    1415#==============================================================================
    1516#value name_path value_path   
     
    1920d saspath E:\ibisq\sasData\final\
    2021d saspop E:\ibisq\sasData\final\
    21 r sasdata mc_deaths0119
    22 d saspopdata popibiscnty90_19_20oct2020
     22r sasdata mc_deaths0120
     23d saspopdata popibiscnty90_20_02aug2021
    2324d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe" -MEMMAXSZ 128G -MEMCACHE 4 -MEMLIB
    24 r pop_where 2001<=year<=2019
    25 r data_where 2001<=year<=2019
     25r pop_where 2001<=year<=2020
     26r data_where 2001<=year<=2020
    2627r sasstdpop morstd
    2728####################################################################
     
    3435r cross1 AgeGrpProxy
    3536r cross2 none
     37r spvar1 cod
    3638r sas 0
    3739r test 0
     
    6769
    68702 null CauseDeathProxy null Cause&of&Death char 10 8
     712 asthmadx ASTHMA null Asthma&Primary&Death num 0 8
    69722 MIdx MI null MI&Primary&Death&First&Occurence num 0 8
    70 2 asthmadx ASTHMA null Asthma&Primary&Death num 0 8
    71732 CVdx CVdx null Cardio&Vascular&Primary&Death num 0 8
    72 2 Resp Resp null Respiratory&Diseases&Primary&Death num 0 8
     742 CerebVdx CerebVdx null Cerebral&Vasular&Primary&Death num 0 8
    73752 COPD COPD null Chronic&Pulmonary&Disease&Death num 0 8 8
    74762 Heats Heatdx null Heat&Related&Primary&Death num 0 8
    75772 CRI CRIdx null Cold&Related&Primary&Death num 0 8
    76 2 Hypothermia Hypothermia null Hypothermia&Related&Primary&Death num 0 8
    77782 Alz Alz null Alzheimer&Any&Death num 0 8
    78792 Par Par null Parkinson&Any&Death num 0 8
     
    80812 ALS ALS null ALS&Any&Death num 0 8
    81822 MS MS null MS&Any&Death num 0 8
    82 2 Lewy Lewy null Lewy&Body&Dimensia&Any&Death num 0 8
    83 2 Diabetes Diabetes null Diabetes&Primary&Death num 0 8
    84 2 Renal Renal null Renal&Primary&Death num 0 8
    8583
    86842 null COProxy null Cause&of&Death char 10 8
    87852 CO_Intent CO_EPHT null CO&Poisoning&EPHT&Death num 0 8
    8886
     87#2 Resp Resp null Respiratory&Diseases&Primary&Death num 0 8
    8988#2 ChronResp ChronResp null Chronic&Respiratory&Primary&Death num 0 8
    90 #2 CerebVdx CerebVdx null Cerebral&Vasular&Primary&Death num 0 8
     89#2 Hypothermia Hypothermia null Hypothermia&Related&Primary&Death num 0 8
     90#2 Lewy Lewy null Lewy&Body&Dimensia&Any&Death num 0 8
     91#2 Diabetes Diabetes null Diabetes&Primary&Death num 0 8
     92#2 Renal Renal null Renal&Primary&Death num 0 8
    9193#2 Pesticid Pesticid null Pesticide&Poisoning&Death num 0 8
    9294#2 Nephdx Nephdx null Nephritis&Primary&Death num 0 8
     
    1011034 sex Sex sex Sex num 0 8
    102104
     1055 null EthProxy null Ethnicity&Proxy num 10 8
    1031065 raceth RacEth DOHraceth Race num 0 8
     1075 hispeth HispEth null Ethnicity num 0 8
     1085 biology EthHerit null Decendancy num 0 8
     1095 NMDOHRaceEth NMDOHEthHerit null NMRace&Eth num 0 8
    104110
    1051116 null GeoProxy null Geographic&Area&Specified num 10 8
    1061126 countycode GeoCnty fipscode Residential&County num 0 8
    1071136 HealthRegion GeoRegion region NMRegion num 0 8
     114
     1157 null UserQProxy null Diag&Proxy char 10 8
     1167 cod DiagUser null Diag&ICD-CM&Codes char 3 8
    108117
    1091189 stdyr stdpop null Standard&Population num 7 8
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_GENERIC_FILES/DEF/NM_Rate1K.def

    r21905 r24328  
    187187 *******************************************************************;
    188188        data tmp;
    189                 set tmp;
    190                 if popcount=. and (0<=n<4) then delete; *if unknown row is only suppressed row;
    191                 else if ((0<n<4) and (popcount<5000)) then do;
     189                set tmp
     190                if ((0<n<4) and (.<popcount<5000)) then do;
    192191                        rateper = .A;
    193192                        n = .A;
  • adopters/nm/trunk/src/main/backend_qModules/3.0/_GENERIC_FILES/DEF/NM_RateCrude10K.def

    r21905 r24328  
    191191        data tmp;
    192192                set rate;
    193                 if popcount=. and (0<=n<4) then delete; *if unknown row is only suppressed row;
    194                 else if (0<n<4) and (.<popcount<5000) then do;
     193                if ((0<n<4) and (.<popcount<5000)) then do;
    195194                        n = .A;
    196195                        rateper = .A;
  • adopters/nm/trunk/src/main/backend_qModules/3.0/acs/NotUsed/_ACSHouse18.cfg

    r21753 r24328  
    1515d saspop E:\ibisq\sasData\final\
    1616d sasdata acsdemos12_18
    17 #d saspopdata popibiscnty90_18_28jun2019
     17#d saspopdata popibiscnty90_19_20oct2020
    1818d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
    1919d data_where housefips&ne&.
  • adopters/nm/trunk/src/main/backend_qModules/3.0/acs/NotUsed/_ACSRegion18.cfg

    r21753 r24328  
    1616d saspop E:\ibisq\sasData\final\
    1717d sasdata acsdemos12_18
    18 d saspopdata popibiscnty90_18_28jun2019
     18d saspopdata popibiscnty90_19_20oct2020
    1919d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
    2020d data_where region^=.
  • adopters/nm/trunk/src/main/backend_qModules/3.0/acs/NotUsed/_ACSSchDist18.cfg

    r21753 r24328  
    1515d saspop E:\ibisq\sasData\final\
    1616d sasdata acsdemos12_18
    17 #d saspopdata popibiscnty90_18_28jun2019
     17#d saspopdata popibiscnty90_19_20oct2020
    1818d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
    1919d data_where schdist&ne&.
  • adopters/nm/trunk/src/main/backend_qModules/3.0/acs/NotUsed/_ACSSenate18.cfg

    r21753 r24328  
    1515d saspop E:\ibisq\sasData\final\
    1616d sasdata acsdemos12_18
    17 #d saspopdata popibiscnty90_18_28jun2019
     17#d saspopdata popibiscnty90_19_20oct2020
    1818d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
    1919d data_where senfips&ne&.
  • adopters/nm/trunk/src/main/backend_qModules/3.0/acs/NotUsed/_ACSTribe18.cfg

    r21753 r24328  
    1515d saspop E:\ibisq\sasData\final\
    1616d sasdata acsdemos12_18
    17 #d saspopdata popibiscnty90_18_28jun2019
     17#d saspopdata popibiscnty90_19_20oct2020
    1818d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
    1919d data_where nmtribe&ne&.
  • adopters/nm/trunk/src/main/backend_qModules/3.0/acs/_ACSCnty18.cfg

    r21753 r24328  
    1616d saspop E:\ibisq\sasData\final\
    1717d sasdata acsdemos12_18
    18 d saspopdata popibiscnty90_18_28jun2019
     18d saspopdata popibiscnty90_19_20oct2020
    1919d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
    2020d data_where none
  • adopters/nm/trunk/src/main/backend_qModules/3.0/birth/NM_Rate1K.def

    r22346 r24328  
    189189        data tmp;
    190190                set tmp;
    191                 if popcount=. and (0<=n<4) then delete; *if unknown row is only suppressed row;
    192                 else if ((0<n<4) and (popcount<5000)) then do;
     191                if ((0<n<4) and (.<popcount<5000)) then do;
    193192                        rateper = .A;
    194193                        n = .A;
  • adopters/nm/trunk/src/main/backend_qModules/3.0/birth/_Birth18.cfg

    r20952 r24328  
    2424
    2525d sasdata birth90_17geo_18ungeo
    26 d saspopdata popibiscnty90_18_28jun2019
     26d saspopdata popibiscnty90_19_20oct2020
    2727
    2828d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
  • adopters/nm/trunk/src/main/backend_qModules/3.0/birth/_Birth18RacEth.cfg

    r20797 r24328  
    1919
    2020d sasdata birth90_17geo_18ungeo
    21 d saspopdata popibiscnty90_18_28jun2019
     21d saspopdata popibiscnty90_19_20oct2020
    2222
    2323d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
  • adopters/nm/trunk/src/main/backend_qModules/3.0/birth/_BirthSecure18.cfg

    r20797 r24328  
    2424
    2525d sasdata birth90_17geo_18ungeo
    26 d saspopdata popibiscnty90_18_28jun2019
     26d saspopdata popibiscnty90_19_20oct2020
    2727
    2828d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
  • adopters/nm/trunk/src/main/backend_qModules/3.0/cancer/_CancerCnty16.cfg

    r21176 r24328  
    1717
    1818d sasdata cancer88_16
    19 d saspopdata popibiscnty90_18_28jun2019
     19d saspopdata popibiscnty90_19_20oct2020
    2020
    2121d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
  • adopters/nm/trunk/src/main/backend_qModules/3.0/cancer/_CancerCnty17.cfg

    r21224 r24328  
    1818
    1919d sasdata cancer88_17
    20 d saspopdata popibiscnty90_18_28jun2019
     20d saspopdata popibiscnty90_19_20oct2020
    2121
    2222d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
  • adopters/nm/trunk/src/main/backend_qModules/3.0/cancer/_CancerCntySecure16.cfg

    r21176 r24328  
    1717
    1818d sasdata cancer88_16
    19 d saspopdata popibiscnty90_18_28jun2019
     19d saspopdata popibiscnty90_19_20oct2020
    2020
    2121d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
  • adopters/nm/trunk/src/main/backend_qModules/3.0/cancer/_CancerCntySecure17.cfg

    r21224 r24328  
    1818
    1919d sasdata cancer88_17
    20 d saspopdata popibiscnty90_18_28jun2019
     20d saspopdata popibiscnty90_19_20oct2020
    2121
    2222d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
  • adopters/nm/trunk/src/main/backend_qModules/3.0/hidd/NM_RateHosp10K_no_df.def

    r21905 r24328  
    193193        data tmp;
    194194                set rate;
    195                 if popcount=. and (0<=n<4) then delete; *if unknown row is only suppressed row;
    196                 else if (0<n<4) and (.<popcount<5000) then do;
     195                if (0<n<4) and (.<popcount<5000) then do;
    197196                        n = .A;
    198197                        rateper = .A;
  • adopters/nm/trunk/src/main/backend_qModules/3.0/hidd/_HIDD18.cfg

    r22879 r24328  
    1616d sasdata hiddkiss08_18
    1717#d sasdata hiddkiss08_18abbrev
    18 d saspopdata popibiscnty90_18_28jun2019
     18d saspopdata popibiscnty90_19_20oct2020
    1919
    2020d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
  • adopters/nm/trunk/src/main/backend_qModules/3.0/hidd/_HIDD19.cfg

    r22879 r24328  
    73732 null AgeGrpProxy null AgeProxy num 10 4
    74742 agegrp4 AgeGrp4 agegrp4 Age num 0 8
    75 2 agegrp4ML AgeGrp4ML agegrp4ML Age num 0 8
     752 agegrp4ML AgeGrp4Alt agegrp4ML Age num 0 8
    76762 agegrp7 AgeGrp7 agegrp7 Age num 0 8
    77772 agegrp8 AgeGrp8 agegrp8 Age num 0 8
  • adopters/nm/trunk/src/main/backend_qModules/3.0/idepi/NM_Rate100.def

    r21580 r24328  
    181181        data tmp;
    182182                set tmp;
    183 /*              if popcount=. and (0<=n<4) then delete; *if unknown row is only suppressed row;
    184                 else if ((0<n<4) and (.<popcount<20)) then do;
     183/*              if ((0<n<4) and (.<popcount<20)) then do;
    185184                        rateper = .A;
    186185                        n = .A;
  • adopters/nm/trunk/src/main/backend_qModules/3.0/idepi/NM_Rate100KLast7.def

    r21905 r24328  
    190190        data tmp;
    191191                set tmp;
    192 /*              if popcount=. and (0<=n<4) then delete; *if unknown row is only suppressed row;
    193                 else if ((0<n<4) and (.<popcount<20)) then do;
     192/*              if ((0<n<4) and (.<popcount<20)) then do;
    194193                        rateper = .A;
    195194                        n = .A;
  • adopters/nm/trunk/src/main/backend_qModules/3.0/idepi/NM_Rate100ZIP.def

    r21580 r24328  
    181181        data tmp;
    182182                set tmp;
    183 /*              if popcount=. and (0<=n<4) then delete; *if unknown row is only suppressed row;
    184                 else if ((0<n<4) and (.<popcount<20)) then do;
     183/*              if ((0<n<4) and (.<popcount<20)) then do;
    185184                        rateper = .A;
    186185                        n = .A;
  • adopters/nm/trunk/src/main/backend_qModules/3.0/idepi/NM_Rate1K.def

    r21905 r24328  
    180180        data tmp;
    181181                set tmp;
    182 /*              if popcount=. and (0<=n<4) then delete; *if unknown row is only suppressed row;
    183                 else if ((0<n<4) and (.<popcount<5000)) then do;
     182/*              if ((0<n<4) and (.<popcount<5000)) then do;
    184183                        rateper = .A;
    185184                        n = .A;
  • adopters/nm/trunk/src/main/backend_qModules/3.0/idepi/NM_Scatterplot.def

    r22140 r24328  
    271271        data tmp;
    272272                set tmp;
    273 /*              if popcount=. and (0<=n<4) then delete; *if unknown row is only suppressed row;
    274                 else if ((0<n<4) and (.<popcount<20)) then do;
     273/*              if ((0<n<4) and (.<popcount<20)) then do;
    275274                        rateper = .A;
    276275                        n = .A;
  • adopters/nm/trunk/src/main/backend_qModules/3.0/idepi/NM_ScatterplotGrYelOrRed.def

    r22343 r24328  
    270270        data tmp;
    271271                set tmp;
    272 /*              if popcount=. and (0<=n<4) then delete; *if unknown row is only suppressed row;
    273                 else if ((0<n<4) and (.<popcount<20)) then do;
     272/*              if ((0<n<4) and (.<popcount<20)) then do;
    274273                        rateper = .A;
    275274                        n = .A;
  • adopters/nm/trunk/src/main/backend_qModules/3.0/idepi/NM_ScatterplotGrYelRed.def

    r22343 r24328  
    261261        data tmp;
    262262                set tmp;
    263 /*              if popcount=. and (0<=n<4) then delete; *if unknown row is only suppressed row;
    264                 else if ((0<n<4) and (.<popcount<20)) then do;
     263                if ((0<n<4) and (.<popcount<20)) then do;
    265264                        rateper = .A;
    266265                        n = .A;
  • adopters/nm/trunk/src/main/backend_qModules/3.0/idepi/NM_ScatterplotREDtoGREEN.def

    r23213 r24328  
    261261        data tmp;
    262262                set tmp;
    263 /*              if popcount=. and (0<=n<4) then delete; *if unknown row is only suppressed row;
    264                 else if ((0<n<4) and (.<popcount<20)) then do;
     263/*              if ((0<n<4) and (.<popcount<20)) then do;
    265264                        rateper = .A;
    266265                        n = .A;
  • adopters/nm/trunk/src/main/backend_qModules/3.0/idepi/NM_TestPositivity.def

    r22140 r24328  
    220220        data tmp;
    221221                set tmp;
    222 /*              if popcount=. and (0<=n<4) then delete; *if unknown row is only suppressed row;
    223                 else if ((0<n<4) and (.<popcount<20)) then do;
     222/*              if ((0<n<4) and (.<popcount<5000)) then do;
    224223                        rateper = .A;
    225224                        n = .A;
  • adopters/nm/trunk/src/main/backend_qModules/3.0/idepi/NM_TestPositivityZIP.def

    r22140 r24328  
    218218        data tmp;
    219219                set tmp;
    220 /*              if popcount=. and (0<=n<4) then delete; *if unknown row is only suppressed row;
    221                 else if ((0<n<4) and (.<popcount<20)) then do;
     220/*              if ((0<n<4) and (.<popcount<5000)) then do;
    222221                        rateper = .A;
    223222                        n = .A;
  • adopters/nm/trunk/src/main/backend_qModules/3.0/mort/NM_RateCrude100K.def

    r23762 r24328  
    191191                        n = .A;
    192192                        popcount = .A;
     193                        *LL = .A;
     194                        *UL = .A;
    193195                        LL = put('**', 8.0);
    194196                        UL = put('**', 8.0);
  • adopters/nm/trunk/src/main/backend_qModules/3.0/mort/NM_RateCrude10K.def

    r21905 r24328  
    192192        data tmp;
    193193                set rate;
    194                 if popcount=. and (0<=n<4) then delete; *if unknown row is only suppressed row;
    195                 else if (0<n<4) and (.<popcount<5000) then do;
     194                if ((0<n<4) and (.<popcount<5000)) then do;
    196195                        n = .A;
    197196                        rateper = .A;
  • adopters/nm/trunk/src/main/backend_qModules/3.0/mort/_Mort18.cfg

    r23035 r24328  
    2020
    2121r sasdata death99_17geo_18ngeo_ibis
    22 d saspopdata popibiscnty90_18_28jun2019
     22d saspopdata popibiscnty90_19_20oct2020
    2323
    2424d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
  • adopters/nm/trunk/src/main/backend_qModules/3.0/mort/_MortSecure18.cfg

    r23213 r24328  
    1919
    2020r sasdata death99_17geo_18ngeo_ibis
    21 d saspopdata popibiscnty90_18_28jun2019
     21d saspopdata popibiscnty90_19_20oct2020
    2222
    2323d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
  • adopters/nm/trunk/src/main/backend_qModules/3.0/mort/secure/_MortSecure18.cfg

    r23035 r24328  
    1919
    2020r sasdata death99_17geo_18ngeo_ibis
    21 d saspopdata popibiscnty90_18_28jun2019
     21d saspopdata popibiscnty90_19_20oct2020
    2222
    2323d sas_bin "C:\Program&Files\SASHome\SASFoundation\9.4\sas.exe"
  • adopters/nm/trunk/src/main/backend_qModules/3.0/popv3/_PopCnty17Case1.cfg

    r20633 r24328  
    1717d saspop E:\ibisq\sasData\final\
    1818
    19 r sasdata popibiscnty90_18_28jun2019
     19r sasdata popibiscnty90_19_20oct2020
    2020d saspopdata landarea
    2121
  • adopters/nm/trunk/src/main/backend_qModules/3.0/popv3/_PopCnty17TestCases.cfg

    r23013 r24328  
    1717d saspop E:\ibisq\sasData\final\
    1818
    19 r sasdata popibiscnty90_18_28jun2019
     19r sasdata popibiscnty90_19_20oct2020
    2020d saspopdata landarea
    2121
  • adopters/nm/trunk/src/main/backend_qModules/3.0/popv3/_PopCnty18.cfg

    r20633 r24328  
    1515d saspop E:\ibisq\sasData\final\
    1616
    17 r sasdata popibiscnty90_18_28jun2019
     17r sasdata popibiscnty90_19_20oct2020
    1818d saspopdata landarea
    1919
Note: See TracChangeset for help on using the changeset viewer.