/*----------------------------------------------------------------

ex2.sasCode to run exemplar 2

How to use this file

Open it in SAS and highlight and run the code one are a few lines

at a time.

 

Code can be run 1) from the RUN menu 2) by clicking the running man icon

3) by the function keys - usually F3

 

ALways check the log file to see if it has worked

ANd see the results in the Results files.

 

Code between 'slash star' and 'star slash' is comments to help

you understand what you are doing

If this whole section is submitted to SAS it will be ignored.

 

BUT !!!!! be careful not to just submit the first half

or SAS will treat everything that follows as comments.

--------------------------------------------------------------------*/

;

/*-----------------------------------------------------------------

Written by Gillian Raab

August 2004

 

first tell sas where the data for this exemplar is stored

Change this to the directorywhere YOU have the data

-----------------------------------------------------------------*/

libname exemp2 "G:\peas\ex2datafiles\data";

/*-------------------------------------------------

exemplar first for simple proportions of internet use

and other results in Table 2.3

INTUSE is a 0/1 variable so its mean gives the percentage use

The declaration of the survey design is done withing the

survey procedures in SAS

----------------------------------------------------*/

title 'Simple proportioninternet use';

proc surveymeans data=exemp2.ex2 mean stderr nobs clm; * no strata;

weight ind_wt;

cluster psu;

var intuse;

strata stratum;

run;

/*-------------------------------------------------------

we can also get proportions in groups that have several categories by defining

the variable as a class variable

IMPORTANT IMPORTANTIMPORTANT

!!!!!!!!!!!!!????????????????????!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Before this you should open and run the SAS programme ex2_formats.sas

This provides formats s to use as value labels for your variables

 

This gives proportions of internet users who use the internet for different

numbers of hours per day

 

-----------------------------------------------------------------------*/

title 'Hours of internet use for users';

proc surveymeans data=exemp2.ex2 mean stderr nobs clm;

weight ind_wt;

cluster psu;

strata stratum;

var rc5;���������������� * say which variable(s) you want;

classrc5;������������� * and define it as a class (category);

format rc5 hours.;������ * with format defined as hours. See ex2_formats.sas;

run;

/*-------------------------------------------------------------------------

We can get proportions in subgroups for simple means by

using the DOMAIN statement

THIS is AVAILABLE in SAS 8.2 only and is not in the SAS online help yet

 

Here we look at usage by sex

--------------------------------------------------------------------------------*/

title 'internet use by sex';

proc surveymeans data=exemp2.ex2 mean stderr nobs clm;

weight ind_wt;

cluster psu;

strata stratum;

var intuse;

domain sex;

format sex sex.;

run;

title 'hours used by sex';

/*---------------------------------------------------------------------------------

and we can similarly look at the proportions of men and women internet users

who use the internet for different times each day

----------------------------------------------------------------------------------*/

proc surveymeans data=exemp2.ex2 mean stderr nobs clm;

weight ind_wt;

cluster psu;

strata stratum;

var rc5;

class rc5;

domain sex;

format sex sex.;

run;

/*------------------------------------------------------

NOW ANALYSES BY FOR TABLES

 

first do PROC freq to get a table of weighted percentages

!!!!!!!!!!!!!!!!!

IMPORTANT IMPORTANTIMPORTANT

!!!!!!!!!!!!!????????????????????!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Before this you should open and run the SAS programme ex2_formats.sas

This puts value labels on your variables

--------------------------------------------------------*/

title 'tables with wrong chi square results';

proc freq data=exemp2.ex2;

table intuse*sex/nopercent nocol chisq;

weight ind_wt;

format rc5 hours. emp_sta employ.;

run;

/*--------------------------------------------------------

this has given you a table of weighted percentages

that are the correct estimates of the percentages using internet

by sex. It also gives a chi squared value, but it makes

no allowance for the sample design and so is not correct

------------------------------------------------------------*/

/*--------------------------------------------------------

same is true for all other tables - here isa larger one

------------------------------------------------------------*/

proc freq data=exemp2.ex2;

table shs_6cla*rc5/nopercent nocol chisq missing;

weight ind_wt;

format rc5 hours. shs_6cla rural.;

run;

/*--------------------------------------------------------

Now use PROC tabulate to get a nice layout for a

weighted Table with row percentages and

the base numbers shown in the

final column

------------------------------------------------------------*/

proc tabulate data=exemp2.ex2 missing;

var ind_wt;

class rc5shs_6cla;

formatrc5 hours. shs_6cla rural.; ;

table�� shs_6cla='', (rc5 all)*ind_wt=''*pctsum<rc5 all>*f=4.1 n='base'*f=5.0;

run;

/*----------------------------------------------------------

sas does not do tables or logistic regression or surveys

----------------------------------------------------------------*/