In reply to Tom Vincent.

Thanks to Tom for pointing this out. The program works as expected in SAS 9.2, but not with SAS 9.1.3. The reason is that PROC IMPORT reads the percentage value from the text file as CHARACTER data in 9.2 (to prevent potential confusion over how to interpret the raw values). But in 9.1.3, the IMPORT procedure reads them as NUMERIC, and so the line in the program that attempts to use the INPUT function with the PERCENT format generates a missing value.

Special thanks to Tom for several back-and-forth messages as we sorted this out.