Concatenar campos no SAS

Quando unimos duas ou mais colunas para criar uma nova, podemos criar um novo campo que sirva como chave única para identificar os indivíduos ou até facilitar buscas por palavras chaves. No post de hoje, vou mostrar como você pode unir colunas no SAS de algumas formas bem simples. Vamos lá!

/*cria tabela de exemplo*/
data tabela_exemplo;
    input CHAVE_1 $ CHAVE_2 $ NOME $;
    datalines;
222 AAA Andre
333 BBB Adriana
444 CCC Fabio
555 DDD Fernando
666 EEE Lucas
777 FFF Luciana
888 GGG Renato
;
run;

/*cria um id com base nas chaves*/
data tabela_id;
	set tabela_exemplo;
	id = cats(chave_1, chave_2);
run;

/*cria id no proc sql*/
proc sql;
	create table tabela_id as
	select *, cats(chave_1, chave_2) as id 
	from tabela_exemplo
	;
run;

Agora, trabalhando com datas:

/*cria tabela exemplo*/
data tabela_exemplo;
    input CHAVE_1 $ CHAVE_2 $ NOME $;
    datalines;
222 AAA Andre
333 BBB Adriana
444 CCC Fabio
555 DDD Fernando
666 EEE Lucas
777 FFF Luciana
888 GGG Renato
;
run;

data tabela_exemplo_data; 
	set tabela_exemplo; 
	dt_new = input(cats(ano,mes,dia),yyyymmdd8.); 
	format dt_new yyyymmdd8.;
run;

Gostou do conteúdo? Se inscreva para receber as novidades! Deixe seu e-mail em INSCREVA-SE na barra à direita, logo abaixo de pesquisar. E, por favor, não deixe de comentar, dar seu feedback e compartilhar com seus amigos. De verdade, isso faz toda a diferença. Você também pode acompanhar mais do meu trabalho seguindo a conta de Twitter @EstatSite ou por alguma das redes que você encontra em Sobre o Estatsite / Contato, como meu canal de Youtube Canal do Yukio.

Bons estudos!

7 comentários em “Concatenar campos no SAS”

  1. Como se concatena textos com quebra de linha como operador de separação? Quero saber se é possível fazer da forma apresentada abaixo e se existe um operador que faça essa quebra de linha (qual seria)?

    Exemplo: CATS(“São Paulo”,Operador de quebra de linha,”BH”)
    Resultado: São Paulo
    BH

  2. E se quiser fazer o string com espaço entre os valroes de cada Variável. Por exemplo, juntar primeiro nome e sobrenomes sem grudar:
    Nome=cats(primeironome,segundonome,ultimonome,) resulta algo como “MariaAugustaSampaio”, quando se quer “Maria Augusta Sampaio”. Poderia ajudar?

Deixe um comentário

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