03-1 변수와 함수
변수 : 변하는 수, 무엇이든 담을수 있는 그릇과 동일.
<변수명 규칙>
- 첫문자는 반드시 영문자(알파벳)또는 마침표를 사용한다.
- 첫문자에는 숫자, 밑줄문자를 사용할 수 없다.
- 마침표와 밑줄 문자를 제외한 특수문자는 사용할수 없다.
- 대문자와 소문자를 구분한다.
- 변수명 중간에 빈칸을 넣을 수 없다.
<변수 사용법>
변수명 <- 값
<- : 할당 연산자
<함수 호출하기>
함수 : 특정한 기능을 수행하기 위해 사전에 만들어진 프로그래밍 구문을 묶어놓은 것, 자판기 버튼과 비슷한 역할.
함수명(인자)
내장함수 : 별도의 패키지를 설치하지 않고 사용할 수 있는 함수, print, sum이 해당
[사용자 정의 함수]
사용자 정의 함수: 사용자가 임의로 만든 함수.
함수명 <- function(매개변수1,매개변수2, ...){
함수가 구현한 내용
...
return(결괏값)
}
함수명 : 함수의 이름
매개변수 : 함수의 변수, 함수가 호출될때 전달되는 값, 파라미터라고도 한다.
함수가 구현할 내용 : 사용자가 함수의 기능을 프로그램 언어로 정의한 구문.
결괏값 : 함수의 기능이 수행된 결과로 함수 본문의 마지막 표현식.
03-2 패키지
패키지 : 여러 함수를 기능에 따라 묶어서 제공하는 것.
<패키지 설치하기>
(1) 함수
- install.packages()
install.packages("패키지명")
(2) R 스튜디오 Packages 탭
설치한 패키지 확인하는 법 : library() 함수 이용
library()
[패키지 로드하기]
library(패키지명)
[패키지 삭제하기]
remove.packages("패키지명")
03-3 조건문과 반복문
제어순서 : 프로그래밍에서 함수가 호출되는 순서
=> 보통 위에서 아래로 실행되지만, 이 제어순서를 변경하기 위해 조건문과 반복문을 사용한다.
연산자 : 프로그램에서 데이터를 처리하는 연산기호
연산자의 종류 : 할당연산자, 산술연산자,관계연산자, 논리연산자
<할당 연산자>
- 특정값을 변수에 저장하며 우항에 있는 값이 좌항에 할당되는 것
- 대입연산자라고도 부른다.
할당연산자 | 기능 |
<- | 변수에 값을 저장 |
A <- 2
A
B = 10
B
-----------------
[1] 2
[1] 10
- R에서는 '='도 사용할 수 있지만, '<-'가 우선순위가 '='보다 높다.
- 실제 코드를 실행한 결과 G <- E = 10의 경우 10이 아직 변수 E에 할당되지 않아 오류가 생긴 것을 볼 수 있다.
- 또한 '=' 연산자는 함수 인자에 값을 넣을 때도 사용할 수 없다.
- 실행은 되지만 y값을 출력해보면 오류가 나온다.
- 그렇기에 R에서 변수를 생성할때 =를 잘 사용하지 않고 일반적으로 <- 를 주로 사용한다.
<산술연산자>
산술연산자 : 숫자를 계산하는 연산자
산술연산자 | 기능 |
+ | 더하기 |
- | 빼기 |
* | 곱하기 |
/ | 나누기 |
%/% | 몫 |
%% | 나머지 |
** 또는 ^ | 제곱수 |
> 1 + 2
[1] 3
> 5 - 3
[1] 2
> 3 * 7
[1] 2
> 20 / 4
[1] 5
> 20 %/% 7
[1] 2
> 20 %% 7
[1] 6
> 6 ^ 2
[1] 36
> 6 ** 2
[1] 36
<관계연산자>
- 변수 간의 혹은 변수와 값을 비교하여 과계를 참,거짓의 진릿값으로 알려주는 연산
- 비교연산자라고도 하며 부등호를 사용한다.
관계 연산자 | 기능 |
> | 크다 |
>= | 크거나 같다 |
< | 작다 |
<= | 작거나 같다 |
== | 같다 |
!= | 같지 않다 |
! | 아니다 |
> 5 > 3
[1] TRUE
> 5 >= 6
[1] FALSE
> 5 < 3
[1] FALSE
> 5 <= 6
[1] TRUE
> 5 == 5
[1] TRUE
> 5 != 5
[1] FALSE
> !5
[1] FALSE
<논리 연산자>
- 관계 연산자로 얻은 진릿값을 다시 연산할때 사용
논리연산자 | 기능 |
& | 그리고(and), 양쪽이 모두 충족될때에만 TRUE |
| | 또는(or), 한쪽의 조건이 충족되는 경우에도 TRUE |
x<- 1:3 #x에 1,2,3 할당
y<- 3:1 #y에 3,2,1 할당
(x > 0) & (y > 1)
-----------------------
[1] TRUE TRUE FALSE
-----------------------
(x > 0) | (y > 1)
-----------------------
[1] TRUE TRUE TRUE
-----------------------
- 실제 실행결과를 위한 논리연산은 아래와 같다.
x | y | x > 0 | y > 1 | &연산 | | 연산 |
1 | 3 | TRUE | TRUE | TRUE | TRUE |
2 | 2 | TRUE | TRUE | TRUE | TRUE |
3 | 1 | TRUE | FALSE | FALSE | TRUE |
<if-else 조건문>
조건문 : 조건이 TRUE면 실행되는 코드 구문, 대표적으로 if-else가 있다.
[if-else 조건문 형식]
if(조건){
조건이 TRUE일 때 실행되는 구문 1
}else{
조건이 FALSE일 때 실행되는 구문 2
}
a <- 10
if(a %% 2 == 0){
print("짝수입니다")
}else{
print("홀수입니다")
}
---------------------------
[1] "짝수입니다"
조건문에 2개 이상의 조건을 넣어야할떄는 if-else문 중간에 else if문을 추가할 수 있다.
if(조건 1){
조건1이 TRUE일 때 실행되는 구문 1
}else if(조건 2){
조건1이 FALSE이고 조건2가 TRUE일 때 실행되는 구문 2
}else{
조건1, 조건2가 모두 FALSE일 때 실행되는 구문 3
}
b <- 80
if(b >= 90){
print("A 학점입니다") # 90점 이상이면 A
}else if(b >= 80){
print("B 학점입니다") # 80점 이상이면 B
}else{
print("C 학점입니다") # 그 외 점수는 C
}
<반복문>
반복문 : 정해진 조건만큼 반복 실행하는 구문
- for(), while() 함수가 대표적이지만 R에서는 데이터를 정리할때 빠르게 연산해주는 apply() 함수가 주로 쓰인다.
[for 함수]
for(변수 in 반복횟수){
반복 조건만큼 실행되는 구문
}
for(i in 2:9){
a <- 2*i
print(a)
}
----------------------------
[1] 2
[1] 4
[1] 6
[1] 8
[1] 10
[1] 12
[1] 14
[1] 16
[1] 18
- 반복문도 조건문처럼 다중으로 사용이 가능하다
[apply() 함수]
- 벡터, 행렬, 리스트를 많이 다루는 R에서는 행과 열단위를 연산할 수 있는 apply()함수를 주로 사용한다.
- lapply(), sapply() 함수가 있으며 데이터 형태에 따라 구별해 사용한다.
apply(x, margin, 함수)
- apply() 함수는 행렬 연산에 사용한다.
- margin이 1이면 행, 2이면 열에 함수가 적용된다.
lapply(x, 함수)
- lapply() 함수는 연산 결과를 리스트로 반환하는 함수이다.
sapply(x, 함수)
- sapply() 함수는 연산 결과를 벡터로 반환하는 함수이다.
'혼공단 > 혼공단 8기' 카테고리의 다른 글
[혼공단 8기] 혼자 공부하는 R 데이터 분석 4주차 후기 및 미션 인증하기 (0) | 2022.07.29 |
---|---|
혼자 공부하는 R데이터분석 4장 - 데이터 다루기 (0) | 2022.07.29 |
[혼공단 8기] 혼자 공부하는 R 데이터 분석 3주차 후기 및 미션 인증하기 (0) | 2022.07.24 |
[혼공단 8기] 혼자 공부하는 R 데이터 분석 2주차 후기 및 미션 인증하기 (0) | 2022.07.16 |
[혼공단 8기] 혼자 공부하는 R 데이터 분석 1주차 후기 및 미션 인증 (0) | 2022.07.08 |