데이터분석 전문가(ADP)를 위한 R프로그래밍 기초편2
1. 논리연산
Python이랑 동일함
==은 서로 같음
!= 은 서로 같지 않음
a < b는 a가 b보다 작다
a <= b는 a가 b보다 작거나 같다
a > b는 a가 b보다 크다
a >= b는 a가 b보다 크거나 같다
2. 기본 수학 연산자
+ , - , * , / 으로 더하기 빼기 곱하기 나누기
^ 으로 n제곱 연산
> 5^3
[1] 125
> 5+3
[1] 8
> 5-3
[1] 2
> 5*3
[1] 15
> 12/3
[1] 4
> 12//3
Error: unexpected '/' in "12//"
3. 특수 논리 연산자
! 은 부정연산
& 는 and 연산
| 은 or 연산
> 3 == 5
[1] FALSE
> !(3==5)
[1] TRUE
> TRUE & FALSE
[1] FALSE
> TRUE | FALSE
[1] TRUE
4. 벡터 인덱싱
a[n]으로 n번째 원소 가져옴
a[-n]하면 n번째 원소를 빼고 가져옴
python은 zero index이지만
R은 index가 1부터 시작함
> a <- c(1,2,3,4,5,6,7,8,9,10)
> a[3]
[1] 3
> a[-3]
[1] 1 2 4 5 6 7 8 9 10
5. 특수 수학 연산
%/%는 나눗셈의 몫
%%는 나눗셈의 나머지
> 10%/%3
[1] 3
> 10%%3
[1] 1
%*%는 행렬의 곱
> m1=matrix(1:6,2)
> m1
[,1] [,2] [,3]
[1,] 1 3 5
[2,] 2 4 6
> m2=matrix(1:9,3)
> m2
[,1] [,2] [,3]
[1,] 1 4 7
[2,] 2 5 8
[3,] 3 6 9
> m1%*%m2
[,1] [,2] [,3]
[1,] 22 49 76
[2,] 28 64 100
> m2%*%m1
Error in m2 %*% m1 : 적합한 인자들이 아닙니다
6. 변수 추출
데이터 프레임에서 $를 이용해서 변수를 추출할 수 있음
df$<변수>
> data(mtcars)
> head(mtcars)
mpg cyl disp hp drat wt qsec vs am gear carb
Mazda RX4 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4
Mazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4
Datsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1
Hornet 4 Drive 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1
Hornet Sportabout 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2
Valiant 18.1 6 225 105 2.76 3.460 20.22 1 0 3 1
> mtcars$hp
[1] 110 110 93 110 175 105 245 62 95 123 123 180 180 180 205 215 230 66 52 65 97 150 150 245 175 66 91 113 264 175 335
[32] 109
7. 회귀분석 식
회귀분석같은 통계분석에서 함수식을 넣을 때 ~으로 연결해서 사용함
lm(y~x1+x2+x3, data=df) 같은 방식으로
8. 도움말
?나 help를 사용하여 함수의 도움말 확인
?lm
help(lm)
8. 기초통계량 함수
mean(x) - 평균
sum(x) - 합
median(x) - 중앙값
log(x, base = ) - 로그, 기본값은 자연로그(base=exp(1))임
var(x) - 분산
cov(x1,x2) - 공분산
sd(x) - 표준편차 vs. 파이썬은 np.std()
cor(x1,x2) - 상관계수 vs. 파이썬은 pd.corr()
length(x) - 변수의 길이 vs. 파이썬은 len()
> x <- c(1,2,3,4,5)
> y <- c(6,7,8,9,10)
> mean(x)
[1] 3
> sum(x)
[1] 15
> median(x)
[1] 3
> log(x)
[1] 0.0000000 0.6931472 1.0986123 1.3862944 1.6094379
> var(x)
[1] 2.5
> sd(x)
[1] 1.581139
> cov(x,y)
[1] 2.5
> cor(x,y)
[1] 1
> length(x)
[1] 5
9. R프로그래밍에서 할 수 있는 실수들
함수 인자의 개수를 정확히 사용
리스트 인덱싱과 벡터 인덱싱에서 [[]]을 써야할지 []을 써야할지 신경써야함
괄호 열고 닫기 신경써야함
사용자 정의 함수에서 매개변수는 ( )으로 expression은 { }으로
function(<매개변수>) { expression }
1:(n+1)과 1:n+1은 다르다
> n <- 5
> 1:n+1
[1] 2 3 4 5 6
> 1:(n+1)
[1] 1 2 3 4 5 6
패키지를 불러올려면 library()나 require()
서로 같음은 =이 아니라 ==
할당연산자 <-에서 <과 -은 붙여써야 인식함
> x < -pi
Error: object 'x' not found
여러줄 넘길때는 { }을 사용해서 연결해줘야
> sum <- {1+2+3
+ +4+5
+ }
> sum
[1] 9
> sum <- 1+2+3
> +4+5
[1] 9
> sum
[1] 6
파일경로는 \\를 쓰거나 /을 써야함
'프로그래밍 > R 프로그래밍' 카테고리의 다른 글
데이터분석 전문가(ADP)를 위한 R프로그래밍 기초편5 (0) | 2022.02.08 |
---|---|
데이터분석 전문가(ADP)를 위한 R프로그래밍 기초편4 (0) | 2022.02.06 |
데이터분석 전문가(ADP)를 위한 R프로그래밍 기초편3 (0) | 2022.02.05 |
데이터분석 전문가(ADP)를 위한 R프로그래밍 기초편1 (0) | 2022.01.31 |
코딩테스트를 위한 R 기초 벼락치기 (0) | 2021.10.30 |