티스토리 뷰

R

(macOS)[R] 기초함수, 수치계산

jinozpersona 2022. 3. 28. 13:44

INTRO

1. 수열

2. 수치계산

 

1. 수열

rep(arg1, arg2) : arg1을 arg2만큼 숫자 벡터 생성

 arg1 : start number

 arg2 : repeat number

 

seq(arg1, arg2) : arg1부터 arg2까지 1씩 증가하는 숫자 벡터 생성

 arg1 : start number

 arg2 : end number

 

seq(arg1, arg2, by=arg3) : arg1부터 arg2까지 arg3씩 증가하는 숫자 벡터 생성

 arg1 : start number

 arg2 : end number

 by=arg3 : number of equal difference

 

seq(arg1, arg2, length=arg3) : arg1부터 arg2까지 분할 숫자 arg3으로 숫자 벡터 생성

 arg1 : start number

 arg2 : end number

 length=arg3 : number of equal division

 

test_basic_fun.R
rm(list = ls())
setwd("/Users/[YourMacID]/Rcoding")

a_rep <- rep(1,3)
b_rep <- rep(2:5,3)

a_seq <- seq(1,3)
b_seq <- 1:3
c_seq <- seq(1,11,by=2)
d_seq <- seq(1,11,length=6)

 

출력결과

 

2. 수치계산

사칙연산 : arithmetics
행렬 : matrix

전치행렬 : transpose matrix
스칼라곱, 역행렬 : scalar, inverse matrix

통계량 statistics
평균 : mean
분산 :variance
표준편차 :standard deviation
합 :sumation
중앙값 :median
자연로그 :natural logarithm
공분산 :covariance

상관관계 : coefficient of correlation
summary : min 1st-quartile median mean 3rd-quartile max

 

test_basic_calc.R
rm(list = ls())
setwd("/Users/[YourMacID]/Rcoding")

## arithmetics
a = 1:10
b = rep(1,10)

a+b
a-b
a*b
a/b


## matrix
c = c(2,7,3)

# transpose matrix
t(c)
A = c%*%t(c)
print(A)

# scalar, inverse matrix
mx = matrix(c(23,41,12,35,67,1,24,7,53), nrow=3)
print(mx)
print(5*mx)
print(solve(mx))


## statistics
# mean, average
mean(a)
# variance
var(a)
# standard deviation
sd(a)
# sumation
sum(a)
# median
median(a)
# natural logarithm
log(a)
# covariance
log_a = log(a)
cov(a,log_a)
# coefficient of correlation
cor(a,log_a)
# summary : min 1st-quartile median mean 3rd-quartile max
summary(a)

 

출력결과

> source("~/Rcoding/test_basic_calc.R", echo=TRUE)

> rm(list = ls())

> setwd("/Users/[YourMacID]/Rcoding")

> ## arithmetics
> a = 1:10

> b = rep(1,10)

> a+b
 [1]  2  3  4  5  6  7  8  9 10 11

> a-b
 [1] 0 1 2 3 4 5 6 7 8 9

> a*b
 [1]  1  2  3  4  5  6  7  8  9 10

> a/b
 [1]  1  2  3  4  5  6  7  8  9 10

> ## matrix
> c = c(2,7,3)

> # transpose matrix
> t(c)
     [,1] [,2] [,3]
[1,]    2    7    3

> A = c%*%t(c)

> print(A)
     [,1] [,2] [,3]
[1,]    4   14    6
[2,]   14   49   21
[3,]    6   21    9

> # scalar, inverse matrix
> mx = matrix(c(23,41,12,35,67,1,24,7,53), nrow=3)

> print(mx)
     [,1] [,2] [,3]
[1,]   23   35   24
[2,]   41   67    7
[3,]   12    1   53

> print(5*mx)
     [,1] [,2] [,3]
[1,]  115  175  120
[2,]  205  335   35
[3,]   60    5  265

> print(solve(mx))
            [,1]        [,2]        [,3]
[1,] -0.35743822  0.18466969  0.13746848
[2,]  0.21069087 -0.09389813 -0.08300555
[3,]  0.07695411 -0.04004034 -0.01069087

> ## statistics
> # mean, average
> mean(a)
[1] 5.5

> # variance
> var(a)
[1] 9.166667

> # standard deviation
> sd(a)
[1] 3.02765

> # sumation
> sum(a)
[1] 55

> # median
> median(a)
[1] 5.5

> # natural logarithm
> log(a)
 [1] 0.0000000 0.6931472 1.0986123 1.3862944 1.6094379 1.7917595 1.9459101
 [8] 2.0794415 2.1972246 2.3025851

> # covariance
> log_a = log(a)

> cov(a,log_a)
[1] 2.112062

> # coefficient of correlation
> cor(a,log_a)
[1] 0.9516624

> # summary : min 1st-quartile median mean 3rd-quartile max
> summary(a)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
   1.00    3.25    5.50    5.50    7.75   10.00

 

 

 

 

 

반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함