A forma mais fácil de alterar o comprimento das variáveis de caracteres no SAS é utilizar a função ALTER TABLE e MODIFICAR declarações no PROC SQL .
Para o efeito, pode utilizar a seguinte sintaxe básica:
proc sql ; alter table my_data modify team char( 4 ); quit ;
Este exemplo em particular modifica o comprimento da variável de caracteres chamada equipa no conjunto de dados denominado meus_dados para ter um comprimento de 4 .
O exemplo seguinte mostra como utilizar esta sintaxe na prática.
Exemplo: Alterar o comprimento da variável de caracteres no SAS
Suponhamos que temos o seguinte conjunto de dados no SAS que contém informações sobre várias equipas de basquetebol:
/*criar conjunto de dados*/ data my_data; input equipa $ pontos; datalines ; Cavs 12 Cavs 24 Heat 15 Cavs 26 Heat 14 Mavs 36 Mavs 19 Nets 20 Nets 31 ; run ; /*ver conjunto de dados*/ proc imprimir dados =my_data;
Podemos utilizar o PROC CONTENTS para ver o comprimento de cada variável no conjunto de dados:
/*ver comprimento de cada variável no conjunto de dados*/ proc contents data =my_data;
A última tabela na saída mostra o comprimento de cada variável:
A partir deste quadro, podemos ver:
- O pontos é uma variável numérica com um comprimento de 8.
- O equipa é uma variável de carácter com um comprimento de 8.
Suponhamos que gostaríamos de alterar o equipa para ter um comprimento de 4.
Para o efeito, podemos utilizar a seguinte sintaxe:
/*alterar o comprimento da variável equipa para 4*/ proc sql ; alter table my_data modify team char( 4 ); quit ;
Podemos utilizá-los CONTEÚDOS DO PROC mais uma vez para ver o comprimento de cada variável no conjunto de dados:
/*ver comprimento atualizado de cada variável no conjunto de dados*/ proc contents data =my_data;
A última tabela na saída mostra o comprimento de cada variável:
Podemos ver que o equipa tem agora um comprimento de 4.
É de notar que nenhum dos valores do equipa foram truncadas porque o nome mais longo da equipa tinha um comprimento de 4.
No entanto, se alterou o comprimento do equipa para 3, por exemplo, então o último carácter de alguns nomes de equipas teria sido truncado.
Utilizando este método, não aparecerá qualquer mensagem de aviso se ocorrer um truncamento por isso, certifique-se de que conhece o comprimento máximo das cadeias de caracteres na sua coluna de caracteres antes de utilizar este método.