Como usar a função substr no sas (com exemplos)


Você pode usar a função SUBSTR no SAS para extrair parte de uma string.

Esta função usa a seguinte sintaxe básica:

SUBSTR(Fonte, Posição, N)

Ouro:

  • Fonte : O canal a analisar
  • Posição : A posição inicial para leitura
  • N : O número de caracteres a serem lidos

Aqui estão as quatro maneiras mais comuns de usar esse recurso:

Método 1: Extraia os primeiros N caracteres da string

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

Método 2: extrair caracteres em um intervalo de posições específico de uma string

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

Método 3: Extraia os últimos N caracteres da string

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

Método 4: Crie uma nova variável se existirem caracteres na string

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

Os exemplos a seguir mostram como usar cada método com o seguinte conjunto de dados no SAS:

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

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

Exemplo 1: Extraia os primeiros N caracteres de uma string

O código a seguir mostra como extrair os primeiros 4 caracteres da variável de equipe :

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

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

Observe que a variável first_four contém os primeiros quatro caracteres da variável team .

Exemplo 2: Extraia caracteres em um intervalo de posições específico de uma string

O código a seguir mostra como extrair caracteres das posições 2 a 5 da variável team :

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

Exemplo 3: Extraia os últimos N caracteres de uma string

O código a seguir mostra como extrair os últimos 3 caracteres da variável team :

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

Exemplo 4: Crie uma nova variável se existirem caracteres na string

O código a seguir mostra como criar uma nova variável chamada W_Team que avalia como ” sim ” se o primeiro caractere do nome da equipe for “W” ou ” não ” se os primeiros caracteres não forem um “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; 

Recursos adicionais

Os tutoriais a seguir explicam como executar outras tarefas comuns no SAS:

Como normalizar dados no SAS
Como substituir caracteres em uma string no SAS
Como substituir valores ausentes por zero no SAS
Como remover duplicatas no SAS

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *