SAS: как преобразовать символьную переменную в числовую


Вы можете использовать функцию input() в SAS для преобразования символьной переменной в числовую.

Эта функция использует следующий базовый синтаксис:

numeric_var = input (character_var, comma9. );

В следующем примере показано, как использовать эту функцию на практике.

Связанный: Как преобразовать числовую переменную в символ в SAS

Пример: преобразование символьной переменной в числовую в SAS

Предположим, у нас есть следующий набор данных в SAS, который показывает общий объем продаж, совершенных каким-либо магазином в течение 10 дней подряд:

/\*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;

Мы можем использовать содержимое proc для просмотра типа данных каждой переменной в наборе данных:

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

Мы видим, что день — это символьная переменная, а продажи — числовая переменная.

Мы можем использовать следующий код для создания нового набора данных, в котором мы преобразуем переменную дня из символьной в числовую:

/\*create new dataset where 'day' is numeric\*/
data new_data;
 set original_data;
 numeric_day = input (day, comma9. );
 drop day;
run ;

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

Примечание.Мы использовали функцию удаления , чтобы удалить исходную переменную дня из набора данных.

Мы можем использовать содержимое proc еще раз, чтобы проверить тип данных каждой переменной в новом наборе данных:

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

Мы видим, что созданная нами новая переменная numeric_day является числовой переменной.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в SAS:

Как переименовать переменные в SAS
Как удалить дубликаты в SAS
Как нормализовать данные в SAS