Hi @claremc
We need a listing of the variable attributes, because values should be moved from one variable to another, so differences in variable lengths and types might be a problem. So please submit the code "proc contents data=mylib.myinput; run;" and post the result.
It would also be a help to have a data sample, ex. the result of "proc print data=mylib.myinput(obs=10); run;".
And a tip: To check for the occurrence of texts like "JR" or "PHD" is not the best way of finding the erroneus observations. It would be better to look at the variables 5-11 to see if a zip-code or other easily recognizable value is present in e.g. v8 or v9, or to check for non-missing values in v11, but that would only work if there are non-missing values in all observations.