Sas: como converter uma variável numérica em uma data


Você pode usar a seguinte sintaxe básica para converter uma variável numérica em uma variável de data no SAS:

 date_var = input ( put (numeric_var, 8 .), MMDDYY10. );
date_var format MMDDYY10. ;

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

Relacionado: Como converter uma variável numérica em caractere no SAS

Exemplo: Converter uma variável numérica 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 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 usar o conteúdo do procedimento para exibir o tipo de dados de cada variável no conjunto de dados:

 /*display data type for each variable*/
proc contents data =original_data;

Podemos ver que o dia e as vendas são variáveis numéricas.

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

 /*create new dataset where 'day' is date*/
data new_data;
    set original_data;
    date_day = input ( put (day, 8. ), MMDDYY10.) ;
    date_day format 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, date_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 uma data
SAS: Como converter uma variável de caractere em numérica
SAS: Converta strings em maiúsculas, minúsculas e maiúsculas

Add a Comment

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