Hello Gene, Sure. The first data step creates a SAS data set from the data you have, formatted as above, minus the first row which contains what look like column headings. Variables with the same names as the column headings are created. A variable (id) is added to uniquely identify each row. The second data step creates a SAS data set containing the data you want, and which can easily be consumed by PROC FREQ. Basically, it creates a row for each unique combination of id, question number (1-4), and answer (yes/no). PROC FREQ then generates a crosstab (question*answer), and suppresses some output (nocum, etc.). You have a lot of control over what output PROC FREQ generates and also how it is formatted and presented, so if you wanted percentages rounded to the nearest integer you could use the FORMAT= option to specify a format, for example. For the specific meaning of options "NOCUM", etc., see: TABLES Statement :: Base SAS(R) 9.4 Procedures Guide: Statistical Procedures, Second Edition, or just turn them off to see how the output changes.
... View more