Como usar a função findc no sas
Você pode usar a função FINDC no SAS para retornar a posição da primeira ocorrência de um caractere individual em uma string.
Esta função usa a seguinte sintaxe básica:
FINDC (string, lista de tanques)
Ouro:
- string : a string a ser analisada
- charlist : A lista de caracteres a serem pesquisados na fonte
O exemplo a seguir mostra como usar esta função na prática.
Exemplo: Usando a função FINDC 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 FINDC para encontrar a posição da primeira ocorrência dos caracteres x , y ou z :
/*find position of first occurrence of either x, y or z in name*/
data new_data;
set original_data;
first_xyz = findc (name, 'xyz');
run ;
/*view results*/
proc print data =new_data;
A nova coluna chamada first_xyz exibe a posição da primeira ocorrência dos caracteres x , y ou z na coluna de nome .
Se nenhum desses três caracteres estiver presente na coluna do nome , a função FINDC simplesmente retornará um valor 0 .
Por exemplo, a partir do resultado podemos ver:
A posição da primeira ocorrência de x, y ou z na primeira linha é a posição 4 . Podemos ver que o caractere na posição 4 da primeira linha é um y .
A posição da primeira ocorrência de x, y ou z na segunda linha é 0 porque nenhuma dessas três letras existe no nome da segunda linha.
E assim por diante.
A diferença entre as funções FIND e FINDC
A função FIND no SAS retorna a posição da primeira ocorrência de uma substring específica em outra string.
O exemplo a seguir ilustra a diferença entre as funções FIND e FINDC :
/*create new dataset*/
data new_data;
set original_data;
find_smith = find (name, 'Smith');
findc_smith = findc (name, 'Smith');
run ;
/*view new dataset*/
proc print data =new_data;
A coluna find_smith exibe a posição da primeira ocorrência da substring “Smith” na coluna de nome .
A coluna findc_smith exibe a posição da primeira ocorrência das letras s , m , i , t ou h na coluna de nome .
Por exemplo, a partir do resultado podemos ver:
A substring ‘Smith’ nunca aparece no primeiro nome, então find_smith retorna um valor de 0 .
A letra i aparece na 7ª posição do primeiro nome, então findc_smith retorna um valor de 7 .
E assim por diante.
Recursos adicionais
Os tutoriais a seguir explicam como usar outras funções comuns no SAS:
Como usar a função FIND no SAS
Como usar a função SUBSTR no SAS
Como usar a função COMPRESS no SAS