Como usar a função floor no sas


Você pode usar a função FLOOR no SAS para retornar o maior número inteiro menor ou igual a um valor numérico.

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

Nota : O oposto da função FLOOR no SAS é a função CEIL .

Exemplo: como usar a função FLOOR no SAS

Digamos que temos o seguinte conjunto de dados no SAS que contém informações sobre a média de itens vendidos por vários funcionários de uma empresa:

 /*create dataset*/
data my_data;
    input employee $avg_sales;
    datalines ;
Andy 12.3
Bob 14.5
Chad 8.44
Derrick 12.87
Eric 8.01
Frank 10
George 11.5
Henry 11.99
Isaac 7.64
;
run ;

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

Podemos usar a função FLOOR para retornar o maior número inteiro menor ou igual a cada valor numérico na coluna avg_sales :

 /*create new dataset*/
data new_data;
    set my_data;
    floor_avg_sales = floor (avg_sales);
run ;

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

Observe que a nova coluna chamada floor_avg_sales contém o maior número inteiro menor ou igual a cada valor numérico na coluna avg_sales .

Por exemplo:

  • O valor 12,30 passa a ser 12 .
  • O valor 14,50 torna-se 14 .
  • O valor 8,44 torna-se 8 .
  • O valor 12,87 torna-se 12 .

E assim por diante.

A diferença entre as funções FLOOR e INT

A função INT no SAS retorna a parte numérica inteira dos valores numéricos.

Para valores positivos, as funções FLOOR e INT retornarão exatamente os mesmos números.

No entanto, as funções FLOOR e INT retornarão valores diferentes para números negativos.

Considere o seguinte conjunto de dados como exemplo:

 /*create dataset*/
data my_data;
    input employee $avg_sales;
    datalines ;
Andy 12.3
Bob 14.5
Chad 8.44
Derrick -12.87
Eric -8.01

/*create new dataset*/
data new_data;
    set my_data;
    floor_avg_sales = floor (avg_sales);
    int_avg_sales = int (avg_sales);
run ;

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

Funções SAS FLOOR vs INT

Para valores numéricos positivos, as funções FLOOR e INT retornam os mesmos resultados.

No entanto, eles não retornam os mesmos resultados para valores numéricos negativos.

A função FLOOR basicamente arredonda os números negativos para o próximo número inteiro, enquanto a função INT arredonda os números negativos para o próximo número inteiro.

Recursos adicionais

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

Como arredondar números no SAS
Como remover vírgulas de strings no SAS
Como exibir valores em formato percentual no SAS

Add a Comment

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