Как использовать функцию substr в sas (с примерами)


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

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

SUBSTR(Источник, Позиция, N)

Золото:

  • Источник : Канал для анализа
  • Позиция : начальная позиция для чтения.
  • N : количество символов для чтения.

Вот четыре наиболее распространенных способа использования этой функции:

Способ 1. Извлеките первые N символов из строки.

 data new_data;
    set original_data;
    first_four = substr (string_variable, 1 , 4 );
run ;

Способ 2. Извлечение символов в определенном диапазоне позиций из строки

 data new_data;
    set original_data;
    two_through_five = substr (string_variable, 2 , 4 );
run ;

Способ 3: извлечь последние N символов из строки

 data new_data;
    set original_data;
    last_three = substr (string_variable, length (string_variable)- 2 , 3 );
run ;

Способ 4. Создайте новую переменную, если в строке существуют символы.

 data new_data;
    set original_data;
    if substr (string_variable, 1 , 4 ) = ' some_string ' then new_var = ' Yes ';
    else new_var = ' No ';
run ;

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

 /*create dataset*/
data original_data;
    input team $1-10;
    datalines ;
Warriors
Wizards
Rockets
Celtics
Thunder
;
run ;

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

Пример 1. Извлечение первых N символов из строки.

Следующий код показывает, как извлечь первые 4 символа из переменной команды :

 /*create new dataset*/
data new_data;
    set original_data;
    first_four = substr (team, 1 , 4 );
run ;

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

Обратите внимание, что переменная first_four содержит первые четыре символа переменной команды .

Пример 2. Извлечение символов в определенном диапазоне позиций из строки

Следующий код показывает, как извлечь символы из позиций со 2 по 5 переменной команды :

 /*create new dataset*/
data new_data;
    set original_data;
    two_through_five = substr (team, 2 , 4 );
run ;

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

Пример 3. Извлечение последних N символов из строки

Следующий код показывает, как извлечь последние 3 символа из переменной команды :

 /*create new dataset*/
data new_data;
    set original_data;
    last_three = substr (team , length (team) -2,3 );
run ;

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

Пример 4. Создайте новую переменную, если в строке существуют символы.

В следующем коде показано, как создать новую переменную с именем W_Team , значение которой равно « да », если первый символ названия команды — «W», или « нет », если первые символы не являются «W».

 /*create new dataset*/
data new_data;
    set original_data;
    if substr (team, 1 , 1 ) = ' W ' then W_Team = ' Yes ';
else W_Team = ' No ';
run ;

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

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

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

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *