-
R을 설치하면 기본으로 표준 패키지가 설치된다.
표준 패키지에는 기본 함수, 통계분석 함수, 그래픽 함수 등이 포함되어 있다.
library() 함수
R에 설치되어 있는 패키지를 확인하기 위해서 library() 함수를 이용한다.
installed.packages() 함수를 이용하면 설치된 패키지에 대한
더 자세한 정보를 볼 수 있다.
형렬의 형태로 출력되는데,
행에는 설치된 패키지 이름이 나오고
열에는 버전 같은 정보가 나온다.
너무 데이터가 많아서 보기가 힘들면
Colnames(installed.packages())를 사용하여 컬럼 네임만 확인할 수 있다.
패키지 사용
패키지가 설치되어 있다고 바로 사용할 수 있는 것은 아니다.
패키지를 사용하려면 메인 메모리에 적재되어야 한다.
R을 설치할 때 표준 패키지가 설치되지만,
R을 시작할 때 표준 패키지가 모두 자동으로 메모리에 적재되지는 않는다.
search()함수
R이 시작되자 마자 메모리에 적재되어
바로 사용할 수 있는 패키지들을 search() 함수를 통해 알 수 있다.
이때 꼭 패키지만 나오는 것은 아니다.
.GlobalEnv는 사용자가 생성한 변수나 함수가 저장된 작업 공간이다.
나머지는 대부분 패키지이다.
search() 함수가 반환하는 패키지 문자열 벡터를 다른말로 '탐색 경로' 라고도 한다.
이를 이용하여 R이 search() 함수에서 나온 순서대로 변수나 함수를 탐색하기 때문이다.
R은 탐색 경로상의 순서대로 변수나 함수를 찾는다.
R이 제일 먼저 '사용자의 작업 공간'에서 함수와 변수를 찾는 것을 알 수 있다.
그로 인해 작업 공간과 패키지에 동일한 이름의 함수가 존재한다면,
작업 공간에 있는 함수가 먼저 실행된다.
그러므로 함수의 이름을 만들 때 주의해야한다.
예를 들어서 t라는 함수는 전치 행렬을 만드는 함수이다.
다시 t() 함수를 새로 만든다면 R은 .GlobalEnv의 t() 함수를 먼저 실행한다.
만약 m을 전치 행렬로 만드는 것이 목표였다면 실패한 것이다.
이런 이름 충동 문제를 방지하기 위해서
R은 모든 패키지에 네임 스페이스(name space)를 갖도록 한다.
패키지 이름과 함께 콜론(:) 두 개를 사용하여 함수를 지정하게 되면
특정 패키지에 포함된 함수를 실행할 수 있다.
사용자가 정의한 t() 함수가 아닌 base의 t() 함수를 실행시키고 싶을 때,
base::t() 함수로 사용한다. 정상적으로 전치 행렬이 된 것을 볼 수 있다.
패키지를 메모리에 적재하기
library() 함수를 사용하여 패키지를 메모리에 적재할 수 있다.
메모리에 적재하지 않으면 설치되어 있어도 사용할 수 없다.
예를 들어 xyplot() 함수는 lattice 패키지에 존재하는 함수이다.
현재 lattice 패키지가 메모리에 적재 되어있지 않다.
이때, xyplot() 함수를 사용하면
오류가 난다.
R은 xyplot() 함수가 존재하는 lattice 패키지를 탐색 경로에서 찾는다.
하지만 메모리에 패키지가 없으므로 찾을 수 없다.
lattice 패키지를 적재하고 탐색 경로를 살펴보자.
메모리에 적재된 것을 볼 수 있다.
이제 lattice 패키지에 포함된 함수를 사용할 수 있다.
detach() 함수
메모리에 패키지를 계속 적재하면 패키지가 굉장히 많아질 수 있다.
또는 동일한 패키지들 때문에 충돌이 발생할 수 있다.
그러므로 필요 없는 패키지들을 제거할 필요가 있다.
detach() 함수를 사용하여 패키지를 제거할 수 있다.
lattice 패키지가 성공적으로 제거된 것을 볼 수 있다.
다시 xyplot() 함수를 사용하려면 lattice 패키지를 다시 적재해야 한다.
install.packages() 함수
표준 패키지 말고도 다른 사람들이 만든 여러가지 패키지들을 사용할 수 있다.
새로운 패키지를 설치하기 위해서는 install.packages() 함수를 사용한다.
예를 들어, 고급 그래픽을 생성할 때 많이 사용하는 'ggplot2'라는 패키지를 설치할 때,
install.package("ggplot2")라고 입력하면 해당 패키지를 설치할 수 있다.
.libPaths()를 입력하면 패키지가 설치된 경로를 알 수 있다.
help()
패키지에 대한 자세한 사용 방법, 포함되는 함수,
데이터 셋에 대해 알고 싶을 때 help() 함수를 이용한다.
예를 들어 help(package="ggplot2")라고 치면 아래와 같이 나온다.
library(help=ggplot2)를 써서 자세한 정보를 얻는 법도 존재한다.
또 하나의 방법은 먼저 패키지를 메모리에 적재한 후,
ls() 함수를 이용하여
ls("package:ggplot2")라고 입력하면
콘솔에 패키지의 함수 리스트가 출력된다.
package:dataset
search() 함수에서 package:datasets 패키지를 확인할 수 있는데,
R에서 기본으로 제공하는 데이터 셋이 들어있다.
어떤 데이터들이 있는지 확인하려면 data() 명령어를 치면 된다.
데이터에 어떤 내용물이 있는지 보고 싶으면
head() 함수나 tail() 함수를 사용할 수 있다.
데이터 셋에 대한 자세한 정보는 help() 함수를 사용하여 볼 수 있다.
유튜브에서 공부한 내용을 정리했다.
'R' 카테고리의 다른 글
[R] 벡터 연산 (1) 2020.10.31 [R] 벡터 생성 (1) 2020.10.31 [R] 데이터 구조 (1) 2020.10.31 [R] 작업 디렉토리 (1) 2020.10.31