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.