How to Convert Numeric Variable to Character in SAS?

In SAS, the PUT() function can be used to convert numeric values to character values. This function takes a numeric variable as the first argument and a character format as the second argument. The format allows you to specify the length of the character value and the type of formatting that should be applied. After the function is applied, the numeric variable will be converted to a character value based on the format that was specified.


You can use the put() function in SAS to convert a numeric variable to a character variable.

This function uses the following basic syntax:

character_var = put(numeric_var, 8.);

The following example shows how to use this function in practice.

Related:

Example: Convert Numeric Variable to Character in SAS

Suppose we have the following dataset in SAS that shows the total sales made by some store during 10 consecutive days:

/*create dataset*/
data original_data;
    input day sales;
    datalines;
1 7
2 12
3 15
4 14
5 13
6 11
7 10
8 16
9 18
10 24
;
run;

/*view dataset*/
proc print data=original_data;

We can use proc contents to view the data type of each variable in the dataset:

/*display data type for each variable*/
proc contents data=original_data;

We can see that day and sales are both numeric variables.

We can use the following code to create a new dataset in which we convert the day variable from numeric to character:

/*create new dataset where 'day' is character*/
data new_data;
    set original_data;
    char_day = put(day, 8.);
    drop day;
run;

/*view new dataset*/
proc print data=new_data; 

Note: We used the drop function to drop the original day variable from the dataset.

/*display data type for each variable in new dataset*/
proc contents data=new_data;

We can see that the new variable we created, char_day, is a character variable.

The following tutorials explain how to perform other common tasks in SAS:

x