@nikky wrote:
I am trying to create a new variable LetterGrade with recoding GPA into alphabets.
However, I keep recieving the message saying variable uninitialized. Below is my code in SAS Studio
Please Help!
*Creating new variable based on Letter grade; data Lgrades; set students_additional; if 0<gpa<0.5 then LetterGrade=F; else if 0.5<gpa<1.5 then LetterGrade=D; else if 1.5<gpa<2.5 then LetterGrade=C; else if 2.5<gpa<3.5 then LetterGrade=B; else if gpa >=3.5 then LetterGrade=A; RUN; proc print data=Lgrades; title 'LetterGrade Dataset'; run; proc contents data=Lgrades; run;
So what grade do you want to assign with the GPA is exactly 0, 0.5, 1.5 or 2.5 ? You are excluding the end point in every single one of your comparisons with those values. I suspect that you may want
data Lgrades;
set students_additional;
if 0<gpa<=0.5 then LetterGrade='F';
else if 0.5<gpa<=1.5 then LetterGrade='D';
else if 1.5<gpa<=2.5 then LetterGrade='C';
else if 2.5<gpa<3.5 then LetterGrade='B';
else if gpa >=3.5 then LetterGrade='A';
RUN;
or similar
... View more