Olá. Creio que pode usar a função INT:
data RxJunior; input valor;
if valor ^= int(valor) then Verifica='não inteiro'; *<---Verificando (sim ou ao); else verifica='interiro';
valor_int=int(valor); *<--- convertendo;
cards; 100 101.10 102 105.86 ; run; Retirei a ideia de uma resposta das communities: General SAS Programming SAS Function to check whether the field value is decimal or numeric
https://communities.sas.com/t5/General-SAS-Programming/SAS-Function-to-check-whether-the-field-value-is-decimal-or/td-p/201682
A documentação da função INT é a seguinte: INT Function
https://go.documentation.sas.com/doc/en/pgmsascdc/9.4_3.5/lefunctionsref/p1b1zd0wuyufp0n1jbqlr27p4eay.htm
Mas, caso queira seguir o raciocínio de resto de divisão, também há a função MOD no SAS: data test; set RxJunior; if mod(valor, 1)^=0 then verifica2='não inteiro'; run; Espero que isso já lhe ajude.
... View more