Как округлять числа в SAS (4 примера)

Как округлять числа в SAS (4 примера)

Вы можете использовать следующие методы для округления чисел в SAS:

Метод 1: округление до ближайшего целого числа

data new_data;
 set original_data;
 new_value = round (value);
run ;

Метод 2: округление до определенных десятичных разрядов

data new_data;
 set original_data;
 new_value1 = round (value, .1); /\*round to 1 decimal place\*/
 new_value2 = round (value, .01); /\*round to 2 decimal places\*/
 new_value3 = round (value, .001); /\*round to 3 decimal places\*/
run ;

Способ 3: округление всех значений вниз (или вверх) до следующего целого числа

data new_data;
 set original_data;
 new_value1 = floor (value); /\*round down to next integer\*/
 new_value2 = ceil (value); /\*round up to next integer\*/
run ;

Метод 4: округление до ближайшего кратного

data new_data;
 set original_data;
 new_value1 = round (value, 10); /\*round to nearest multiple of 10\*/
 new_value2 = round (value, 100); /\*round to nearest multiple of 100\*/
run ;

В следующих примерах показано, как использовать каждый метод со следующим набором данных в SAS:

/\*create dataset\*/
data original_data;
 input value;
 datalines ;
0.33
0.9
1.2593
1.61
2.89
4.3
8.8
14.4286
18.2
51.4
;
run ;

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

Пример 1: округление до ближайшего целого числа

В следующем коде показано, как округлить каждое значение до ближайшего целого числа:

/\*round to nearest integer\*/
data new_data;
 set original_data;
 new_value = round (value);
run ;

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

Пример 2: *округление до определенного десятичного разряда*

В следующем коде показано, как округлить значения до определенного числа знаков после запятой:

data new_data;
 set original_data;
 new_value1 = round (value, .1); /\*round to 1 decimal place\*/
 new_value2 = round (value, .01); /\*round to 2 decimal places\*/
 new_value3 = round (value, .001); /\*round to 3 decimal places\*/
run ;

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

Пример 3. Округление всех значений вниз (или вверх) до следующего целого числа

Следующий код показывает, как округлить все значения вниз (или вверх) до следующего целого числа, используя функции floor() и ceil() :

data new_data;
 set original_data;
 new_value1 = floor (value); /\*round down to next integer\*/
 new_value2 = ceil (value); /\*round up to next integer\*/
run ;

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

Метод 4: округление до ближайшего кратного

В следующем коде показано, как округлить все значения до ближайшего кратного некоторого значения:

data new_data;
 set original_data;
 nearest10 = round (value, 10); /\*round to nearest multiple of 10\*/
 nearest100 = round (value, 100); /\*round to nearest multiple of 100\*/
run ;

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

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в SAS:

Как нормализовать данные в SAS
Как заменить пропущенные значения нулем в SAS
Как удалить дубликаты в SAS

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.