Sas: como converter uma variável de caractere em uma data


Você pode usar a função input() no SAS para converter uma variável de caractere em um formato de variável de data.

Esta função usa a seguinte sintaxe básica:

 date_var = input (character_var, MMDDYY10. );
date_var format MMDDYY10. ;

O exemplo a seguir mostra como usar esta função na prática.

Exemplo: Converter uma variável de caractere em uma data no SAS

Digamos que temos o seguinte conjunto de dados no SAS que mostra o total de vendas realizadas por uma loja em seis dias diferentes:

 /*create dataset*/
data original_data;
    input day $sales;
    datalines ;
01012022 15
01022022 19
01052022 22
01142022 11
01152022 26
01212022 28
;
run ;

/*view dataset*/
proc print data = original_data;

Podemos ver que day é uma variável de caractere, mas deve ser representada no formato de data.

Podemos usar o código a seguir para criar um novo conjunto de dados onde convertemos a variável day de um formato de caractere para um formato de data:

 /*create new dataset where 'day' is in date format*/
data new_data;
    set original_data;
    new_day = input (day, MMDDYY10. );
    format new_day MMDDYY10. ;
    drop day;
run ;

/*view new dataset*/
proc print data = new_data; 

Nota : Usamos a função drop para remover a variável day original do conjunto de dados.

Podemos ver que a nova variável que criamos, new_day , está no formato de data.

Observe que MMDDAA10. é apenas um formato de data possível que poderíamos ter usado. Você pode encontrar uma lista completa de formatos de data SAS aqui .

Recursos adicionais

Os tutoriais a seguir explicam como executar outras tarefas comuns no SAS:

SAS: Como converter uma variável de caractere em numérica
SAS: Como converter uma variável numérica em caractere
SAS: Como substituir valores ausentes por zero

Add a Comment

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