R 언어의 기초 계산 sqrt, sin, exp 지수 및 반올림 등 일반적인 함수 계산

 

3장. R 언어의 기초

R의 Package가 CRAN 아카이브 네트워크에 등록된 CRAN available packages가 18,994 건에 이룰 정도로 많이 있습니다. 하지만 많은 만큼 자신에게 필요로 하는 법을 찾는 것입니다. 사람마다 배우고 싶어 하는 부분이 다르기 때문에 R을 학습하기 위해 정해진 순서는 없습니다. 여러가지 계산법 중에서 자주 사용하는 기능만 별도로 정했습니다.


3-1 계산

3-1-1 기초 계산

  • 화면 프롬프트 > 는 R 이 명령을 실행 하는 표시 입니다. 코드에 대한 결과를 얻으려면 엔터키를 클릭 합니다.
  sqrt(4)
## [1] 2
  • 각 행은 최대한 8192자 까지 입력 할 수 있다. 화면상 긴 코드나 복잡한 표현을 하려면 완전히 끝나지 않은 상태로 행을 마무리하고, 다음 행에 나머지 코드를 이어가 면 됩니다. 긴 문장을 작성 한 다고 한 다면 다음 행에서 + 변환 됩니다.
5+6+3+6+4+2+4+8+
 3+2+7  
## [1] 50
  • 여러개의 계산 지원이 됩니다. 각 계산 마다 세미콜론을 입력 하여 계산 하면 됩니다.
2+3 ; 5*7 ; 4-7
## [1] 5
## [1] 35
## [1] -3

3-1-2 반올림

  • R에서는 반올림의 종류 (무조건올림, 무조건 내림, 가장 가까운 정수로 올림)등 여러가지가 있는데 R에서는 문제없이 실행이 가능 합니다. 함수들이 여러개 있는데, 2가지 정도의 함수가 있습니다.
#  내림
floor(5.7)
## [1] 5
# 반올림 
ceiling(5.7)
## [1] 6
  • 여기에서 음수의 올림과 내림을 약간 헤깔립니다. 음수의 경우는 아래의 개념이 양수와 반대이므로 계산에 유의 하셔야 합니다.
# 내림
floor(-5.7)
## [1] -6
# 반올림
floor(-5.7)
## [1] -6
  • 소수점 자체를 없애 려고 하면, trunc() 함수를 사용하면 됩니다.
trunc(5.7)
## [1] 5
trunc(-5.7)
## [1] -5
  • 연산 하면서 가장 많이 사용하는 것은 round() 함수 입니다.
round(5.7)
## [1] 6
round(5.4)
## [1] 5

3-1-3 산술

  • R 프롬프트는 계산기로도 사용할 수 있다. +와 -기호를 사용해 덧셈과 뺄샘을 할 수 있고, * 와 /를 이용해서 곱하기와 나누기를 할수 있습니다.
7 + 3 - 5 *2
## [1] 0
  • 만약에 어느 부서의 집행 예산이 있는데, 예산 증감율을 아래와 같이 계산 할 수 있습니다.
#  전년도 예산 : 11000
# 올해 예산 : 10000

(10000 - 11000)/11000
## [1] -0.09090909
  • log 함수는 로그의 밑이 오일러 상수 e 는 2.718282이고 안티로그 함수는 exp 이다.
log(10)
## [1] 2.302585
exp(1)
## [1] 2.718282

※특히 exp() 함수는 보전조직에서 간단하게 고장예측 함수를 작성 할때, 주로 사용된다.

  

아래 예제와 같이 예측시간을 구하는 경우가 있다.

   예제) 평균고장 간격이 500이고, 가동시간이 600시간에 도래 했을때, 아래 설비의 누적 고장률은 어떻게 되는가?

#고장율 Lamda 
mtbf <- 500
lamda  <- 1/mtbf

# 가동시간
t <- 600

# 고장율을 구함 
failure  = 1-exp(-(lamda)*(t))

# 고장 확률
 print( paste0(floor(failure * 100), "%" ))   
## [1] "69%"
  • 로그의 밑의 10인 상용로그를 원한 다면 함수 log10을 사용한다.
log10(100)
## [1] 2

         



  • 다른 로그 밑을 사용하려면 log 함수의 두번째 인자를 로그밑의 값으로 설정 한다. 아래는 로그 8의 밑으로 값 3을 원한다고 가정 하면 다음과 같이 입력 한다.
log(8,2)
## [1] 3
  • R에서 삼각함수의 각도는 라디안 단위로 측정 한다 원은 2π 라디안이고 360˚ 이다. 따라서 직각 (90˚)은 π/2 라디안 이다. R은 π 값을 pi로 표시 한다.
pi
## [1] 3.141593
sin(pi/2)
## [1] 1
cos(pi/2)
## [1] 6.123234e-17

예제) 직각 (90˚)은 π/2 라디안이라는 것을 sin 함수그래프를 그려 보아라.

 x <- seq(from = 0, by = 0.01, length.out = 360)
 plot(x = x, y=  sin(pi * x)) 

라디안 함수 구하기 

3-1-5 나머지와 몫

나눗셈에서 몫과 나머지를 구하려면 각 %/%(퍼센트, 나누기, 퍼센트) %%(퍼센트,퍼센트)를 사용한다.

몫을 구하는 것이다.

# 몫을 구한다. 
9%/%5
## [1] 1

9하고 8하고 나눈 결과 나머지가 얼마냐 되는지 보는것이다.

# 나머지를 구한다. 
9%%5
## [1] 4

나머지와 몫은 거의 사용하지 않는 것처럼 보이지만, 자원을 랜덤 샘플링 해서, 시뮬레이션 할때 많이 사용한다. 이것에 대한 사례는 정리되는 대로 보여 주겠다.

댓글 없음:

댓글 쓰기

css cheat sheet 클래스 선택자, margin(마진), display , center 조정 간단한 구성 요소

 앞에서는 html의 간단한 sheet를 소개 하였습니다.   html은  주로 골격을 나타나는 것이라, 디자인을 하는데는 css로 하여야 합니다.  아래 코드와 같이 css 관련 하여 매우 간단하게 코딩 하겠습니다.  body 부분의 css 코딩  ...