libname deepak 'C:\SAS Files';
proc format;
invalue convert 'A+' = 100
'A' = 96
'A-' = 92
'B+' = 88
'B' = 84
'B-' = 80
'C+' = 76
'C' = 72
'F' = 65;
data deepak.grades;
input ID $3. Grade convert.;
*format Grade convert. ;
datalines;
001 A-
002 B+
003 F
004 C+
005 A
;

proc print data = deepak.grades;
run;
I get the following output
Obs ID Grade
1 001 .
2 002 .
3 003 .
4 004 .
5 005 .

I don’t understand why Grade shows up as a missing value.
Everything seems fine, including ID $3.
Now, in case I use ID : $3. Or use column input, I get the
desired output.

Kindly help
Deepak

Answers were Sorted based on User's Feedback



libname deepak 'C:\SAS Files'; proc format; invalue convert 'A+' = 100 '..

Answer / kondal

i hope this code will work.
data grades;
input ID $3. Grade : convert.;
datalines;
001 A-
002 B+
003 F
004 C+
005 A
;
proc print data =grades;
run;

Is This Answer Correct ?    4 Yes 1 No

libname deepak 'C:\SAS Files'; proc format; invalue convert 'A+' = 100 '..

Answer / deepak

Thanks Kondal,

But why does it not work? If u see there, ID has only 3
columns, and technically it must work without a colon (ID :
$3.). I get a perfct output with a semicolon, but without it
I dont.

Is this something specific about user defined Informats?

Appreciate any help

Deepak

Is This Answer Correct ?    1 Yes 1 No

libname deepak 'C:\SAS Files'; proc format; invalue convert 'A+' = 100 '..

Answer / amaresh

proc format;
invalue convert 'A+' = 100
'A' = 96
'A-' = 92
'B+' = 88
'B' = 84
'B-' = 80
'C+' = 76
'C' = 72
'F' = 65;
run;
data grades;
input ID @5 Grade convert.;
datalines;
001 A-
002 B+
003 F
004 C+
005 A
;
run;

Is This Answer Correct ?    1 Yes 1 No

libname deepak 'C:\SAS Files'; proc format; invalue convert 'A+' = 100 '..

Answer / d.balavishnu

9

Is This Answer Correct ?    0 Yes 0 No

libname deepak 'C:\SAS Files'; proc format; invalue convert 'A+' = 100 '..

Answer / sai ram

Hi,
you must assign position of Grade variable.you gave a length of id is $3. so you must gave a proper position to Grade variable otherwise it will show the missing.

proc format;
invalue convert 'A-' = 100
'A' = 96
'B+' = 88
'C+' = 76
'F' = 65
;
run;

data deepak;
input ID $3. @5 Grade convert.;
datalines;
001 A-
002 B+
003 F
004 C+
005 A
;
run;
proc print data = deepak;
run;

Is This Answer Correct ?    0 Yes 0 No

libname deepak 'C:\SAS Files'; proc format; invalue convert 'A+' = 100 '..

Answer / virat samratt

proc format;
invalue $convert 'A+' = 100
'A' = 96
'A-' = 92
'B+' = 88
'B' = 84
'B-' = 80
'C+' = 76
'C' = 72
'F' = 65;
data grades;
input ID $3.  Grade$ convert.;
datalines;
001 A-
002 B+
003 F
004 C+
005 A
;


add $ before format name in proc format statement
then you will get

Is This Answer Correct ?    0 Yes 0 No

libname deepak 'C:\SAS Files'; proc format; invalue convert 'A+' = 100 '..

Answer / ramakrishna

proc format;
invalue convert 'A+' = 100
'A' = 96
'A-' = 92
'B+' = 88
'B' = 84
'B-' = 80
'C+' = 76
'C' = 72
'F' = 65;
run;
data grades;
input ID $3. Grade $ convert.;
*format Grade convert. ;
datalines;
001 A-
002 B+
003 F
004 C+
005 A
;

proc print data = grades;
run;

Is This Answer Correct ?    0 Yes 2 No

Post New Answer

More SAS Interview Questions

What does the RUN statement do?

0 Answers   Quintiles,


Explain proc sort?

0 Answers  


How to convert a given date value into SAS date

9 Answers   CitiGroup, Quintiles,


which date functions advances a date time or date/time value by a given interval? : Sas programming

0 Answers  


Describe the ways in which you can create macro variables?

0 Answers  






What is the function of output statement in a SAS Program?

0 Answers  


do you prefer proc report or proc tabulate? Why? : Sas programming

0 Answers  


What are the best sas programming practices for handling very large datasets? : sas-grid-administration

0 Answers  


What is the pound sign used for in the data_null_ ?

1 Answers  


What is slibref?

0 Answers  


what is information maps?

0 Answers   CitiGroup,


what is conditional processing?

4 Answers   Accenture,


Categories