Как удалить ведущие нули в sas (с примерами)
Самый простой способ удалить ведущие нули в символьной переменной в SAS — использовать функцию INPUT для преобразования переменной в числовую переменную, которая автоматически удаляет ведущие нули.
Эта функция использует следующий базовый синтаксис:
data new_data;
set original_data;
no_zeros = input(some_column, comma9. );
run ;
В следующем примере показано, как использовать этот синтаксис на практике.
Пример. Удаление ведущих нулей в SAS
Предположим, у нас есть следующий набор данных в SAS, который показывает общий объем продаж различных розничных магазинов:
/*create dataset*/
data original_data;
inputstore $sales$;
datalines ;
A 055
B145
C 199
D 0000443
E 0093
F 00004302
G 38
H 0055
;
run ;
/*view dataset*/
proc print data = original_data;
Мы можем использовать следующий код, чтобы удалить все ведущие нули из значений столбца продаж :
/*remove leading zeros in sales column*/
data new_data;
set original_data;
no_zeros = input (sales, order9. );
run ;
/*view results*/
proc print data = new_data;
Обратите внимание, что из значений в столбце no_zeros удалены все ведущие нули.
Обратите внимание, что новый столбец no_zeros является числовым.
Если вы хотите сохранить его в виде столбца символов, вы можете обернуть функцию PUT вокруг функции INPUT следующим образом:
/*remove leading zeros in sales column*/
data new_data;
set original_data;
no_zeros = put ( input (sales, order9. ), 8. );
run ;
/*view results*/
proc print data = new_data;
Если мы используем содержимое процедуры use proc для отображения типа данных каждой переменной в наборе данных, мы увидим, что no_zeros — это символьная переменная:
/*view data type of each variable in new dataset*/
proc contents data =new_data;
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в SAS:
Как нормализовать данные в SAS
Как выявить выбросы в SAS
Как использовать сводку процедур в SAS
Как создать таблицы частот в SAS