Como usar a função index no sas (com exemplos)
Você pode usar a função INDEX no SAS para retornar a posição da primeira ocorrência de uma string em outra string.
Esta função usa a seguinte sintaxe básica:
ÍNDICE(fonte, extrato)
Ouro:
- fonte : O canal a ser analisado
- extract : a sequência de caracteres a ser pesquisada na fonte
O exemplo a seguir mostra como usar esta função na prática.
Exemplo: usando a função INDEX no SAS
Digamos que temos o seguinte conjunto de dados no SAS que contém uma coluna de nomes:
/*create dataset*/
data original_data;
input name $25.;
datalines ;
Andy Lincoln Bernard
Michael Smith
Chad Simpson Arnolds
Derrick Smith Henrys
Eric Millerton Smith
Frank Giovanni Goode
;
run ;
/*view dataset*/
proc print data = original_data;
Podemos usar a função INDEX para encontrar a posição da primeira ocorrência da string “Smith” em cada linha:
/*find position of first occurrence of 'Smith' in name*/
data new_data;
set original_data;
first_smith = index (name, ' Smith ');
run ;
/*view results*/
proc print data = new_data;
A nova coluna chamada first_smith exibe a posição da primeira ocorrência da string ‘Smith’ na coluna de nome .
Se ‘Smith’ não for encontrado, a função INDEX simplesmente retorna um valor de 0 .
É importante observar que a função INDEX diferencia maiúsculas de minúsculas, portanto, se você pesquisar por “smith”, a função INDEX retornará 0 para cada string:
/*find position of first occurrence of 'smith' in name*/
data new_data;
set original_data;
first_smith = index (name, ' smith ');
run ;
/*view results*/
proc print data = new_data;
Para realizar uma pesquisa sem distinção entre maiúsculas e minúsculas, você pode usar a função lowcase() para primeiro converter cada string em minúsculas e, em seguida, pesquisar por “smith” da seguinte maneira:
/*find position of first occurrence of 'smith' in name*/
data new_data;
set original_data;
first_smith = index ( lowcase (name), ' smith ');
run ;
/*view results*/
proc print data = new_data;
Ao primeiro converter cada string em minúsculas, podemos usar a função INDEX para realizar uma pesquisa sem distinção entre maiúsculas e minúsculas.
Recursos adicionais
Os tutoriais a seguir explicam como usar outras funções comuns no SAS:
Como usar a função SUBSTR no SAS
Como usar a função COMPRESS no SAS
Como usar a função FIND no SAS
Como usar a função COALESCE no SAS