통계처리 (기본)



Rounding of Numbers


정확한 계산을 필요로 하는 경우도 있지만, 때로는 반올림을 할 필요도 있다. 이 경우를 위해서 R은 아래와 같은 

몇가지 반올림 관련 함수들을 제공 한다.


ceiling(x)

floor(x)

trunc(x, ...)

round(x, digits =)

signif(x, digits =)


digits는 반올림할 decimal point의 위치를 결정 한다. 

상수면 소수점(decimal point)를 나타내며, 음수면 10,100의 자리를 나타낸다 (multiples of 10, 100).


round(123.456, digits=2)
[1] 123.46
round(-123.456, digits=-2)
[1] 100




만약 유효숫자(significant digits)를 숫자의 크기에 상관없이 명시하고 싶다면,

signif()를 사용할 수 있다.

> signif(-123.456,digits=4)
[1] -123.5
> signif(-123.456,digits=5)
[1] -123.46
> signif(-123.456,digits=1)
[1] -100
> signif(-123.456,digits=1)
[1] -100



round와 signif는 5를 기준으로 작은지 큰지에 따라 rounding을 수행 한다. 이와 다르게 한쪽 방향으로만 rounding을 수행하는

함수들도 존재 한다.


floor(x) 가장 작은 정수로 x가 결정 된다.

> floor(123.45)
[1] 123
> floor(-123.45)
[1] -124


ceiling(x) 가장 큰 정수로 x가 결정 된다.

> ceiling (123.45)
[1] 124
> ceiling (-123.45)
[1] -123



trunc(x) 가장 가까운 정수로 반올림되는데 방향이 0이랑 가장 근접한 쪽이다.

> trunc(123.45)
[1] 123
> trunc(-123.45)
[1] -123




+ Recent posts