/*TIMSS DATA EXTRACTOR 1.2 FOR TIMSS POPULATION 2*/ /*updated 2003 DEC*/ /*Comments & questions --> kuekawa@alumni.uchicago.edu www.estat.us */ /*specify the working directory*/ /*no \ at the end of the path*/ %let folder =D:\Documents and Settings\Kaz\My Documents\KazExtractor; %macro type; eachline contains 'BIMATSCR' or eachline contains 'BISCISCR' or /*HERE ADD VARIABLES just like above*/ /*note some basic variables, such as IDs and weight will automatically come. See below for variables that are already FLAGGED*/ %mend type; options pagesize=58 linesize=78 pagesize=32767; libname library "&folder"; libname here "&folder"; filename stud "&folder\Kbsg.txt"; filename prin "&folder\Kbcg.txt"; filename link "&folder\Kblg.txt"; filename tea "&folder\Kbtm.txt"; filename raw "&folder\Kraw.txt"; filename nation "&folder\Knation.txt"; %include "&folder\Krunonce.txt"; data studd ;infile stud length=lg;input @;input @1 eachline $varying78. lg; data linkk;infile link length=lg;input @;input @1 eachline $varying78. lg; data teaa;infile tea length=lg;input @;input @1 eachline $varying78. lg; data prinn;infile prin length=lg;input @;input @1 eachline $varying78. lg; data raww;infile raw length=lg;input @;input @1 eachline $varying78. lg; data nationn;infile nation length=lg;input @;input @1 eachline $varying78. lg; data all;set raww studd linkk teaa prinn nationn;data all2;set all; /* (1) BELOW TYPE IN VARIABLE NAMES YOU WANT IN CAPITAL LETTERS. Any variables from student, linakge, math teacher, and principal data example eachline contains 'ABC' or eachline contains 'DEF' or You don't need to write id variables or weight variables./ They will automatically come.*/ *******************************************************************; where %type /*********************************************************************/ eachline contains /* id variables*/ "IDCNTRY" or eachline contains "IDSCHOOL" or eachline contains "IDCLASS" or eachline contains "IDSTUD" or eachline contains "ITSEX" or eachline contains "IDGRADER" or eachline contains "IDSTUD" or eachline contains "IDTEACH" or eachline contains "IDLINK" or eachline contains "MATSUBJ" or eachline contains "BCBGCOMM" or /*some functional command lines*/ eachline contains 'DATA ' or eachline contains 'DEFAULT=5' or eachline contains 'INFILE' or eachline contains 'A B R N' or eachline contains '%PUT' or eachline contains 'INPUT' or eachline contains "DPCDATE" or /*eachline contains 'LABEL ;' or*/ eachline contains "LABEL" or eachline contains "RUN" or eachline contains '&fname' or eachline contains 'kokka' or eachline contains 'kaz' or eachline contains 'warning' or /*eachline contains "otherwise;" or eachline contains "end;" or*/ /*weight variables*/ eachline contains 'MATWGT' or eachline contains 'SCIWGT' or eachline contains 'TCHWGT' or eachline contains 'SENWGT' or eachline contains 'TOTWGT' or eachline contains 'HOUWGT' or eachline contains 'WGTFAC1' or eachline contains 'WGTFAC1' or eachline contains 'WGTADJ1' or eachline contains 'SCHWGT' or eachline contains 'STOTWGTL' or eachline contains 'STOSWGTU' or eachline contains 'STOTWGTE' or eachline contains 'JKZONE' or eachline contains 'JKINDIC' or /*eachline contains '' or eachline contains '' or eachline contains '' or eachline contains '' or eachline contains '' or*/ /*also some useful manipulation*/ /*for creating HLM level-1 weight seito*/ /*for creating school weight for world comparison gakko*/ eachline contains 'seito' or eachline contains 'gakko' or eachline contains 'kumi' /*take format things or eachline contains '= "' */ ; *******************************************************************; /*I found a better way to print this program*/ data all2;set all2; file "&folder\extract.sas"; put (eachline) (100.0); run;