R 시작 # chap01_Basic
# 주석문
명령어 실행 방법
Interaction 방식
줄 선택 + Ctrl + R 또는 Ctrl + Enter
패키지 사용
- -R에서 제공하는 패키지(Package)는 처리할 자료(data)와 기능(function) 그리고 알고리즘(Algorithm)등이 하나의 꾸러미 형태로 제공.
- -패키지는 CRAN Site에서 다운로드하여 사용자의 컴퓨터에 설치할 수 있음.
- -R 프로그래밍의 실력은 얼마나 많은 패키지를 효과적으로 데이터 분석에 적용할 수 있는가 하는 능력에 따라 좌우
R 패키지 보기
dim(available.packages()) # 17517 17. 17개의 특징을 가지는 17517개 패키지
R 패키지 목록 보기
available.packages()
R Session 보기
sessionInfo()
stringr 패키지 설치
install.packages("stringr")
설치된 패키지 확인
installed.packages()
패키지 메모리 로드
library(stringr)
현재 로드된 패키지 확인
search()
library(blm) #에러. 일반적으로 사용.
require(blm) #경고
패키지 삭제
remove.packages("stringr")
기본 데이터 셋 보기
data()
기본 데이터 셋으로 히스토그램 그리기
단계 1 : 빈도수를 기준으로 히스토그램 그리기
hist(Nile)
단계 2 : 밀도를 기준으로 히스토그램 그리기
hist(Nile, freq = F)
단계 3 : 단계2의 결과에 분포 곡선을 추가
lines(density(Nile))
히스토그램을 파일로 저장하기
par(mfrow=c(1,1))
pdf("C:/workspaces/Rwork/output/batch.pdf")
hist(rnorm(20))
dev.off()
스칼라(scalar) 변수 사용예
var1 <- 0 #오른쪽값을 왼쪽에 저장, =와 유사
var1
var1 <- 1
var1
var2 <- 2
var2
'변수.멤버' 형식의 변수 선언
goods.code <- 'a001'
goods.name <- '냉장고'
goods.price <- 850000
goods.des <- '최고 사양, 동급 최고 품질'
벡터 변수 사용예
java의 1차원 배열과 유사.
배열? 동일한 자료형일 경우에! 연속적으로 2개 이상 저장해서 보관하고 싶을 때,
메모리를 연속적으로 할당. 하나의 변수 이름으로 해당 데이터들을 관리. 인덱스로 각각.
names <- c("홍길동","이순신","유관순")
names
함수
sum(10, 20, 30)
sum(10, 20, 30, NA) #NA(Not Available), 결측치. 결과 NA
sum(10, 20, 30, NA, na.rm = T) #매개변수 속성으로 처리
#자료형 확인
string <- "홍길동"
string
is.character(string) #자료형이 character(문자열)인가?
int <- 20
is.numeric(int) #수치형의 데이터인가?
x <- is.numeric(int)
x
is.logical(x) #입력으로 전달된 값이 T,F 인가?
ls() #현재 사용중인 변수객체 보기
문자 원소를 숫자 원소로 형 변환하기
x <- c(1,2,"3")
x # "1" "2" "3" 서로 다른 자료형의 데이터셋은 모두 char로
result <- x * 3 # Error. 곱셈은 수치형만 가능.
result <- as.numeric(x)*3 #as. 자료형 변환
result # 3 6 9
복소수 자료 생성과 형변환
z <- 5.3 -3i
Re(z) #복소수에서 실수만 리턴. real
Im(z) #허수만 리턴. img
is.complex(z) #복소수인가? T
as.complex(5.3) #5.3+0i 복소수로 형변환
#데이터 전처리, 필터링 등 가공처리 시 유용하게 활용.
스칼라 변수의 자료형과 자료 구조 확인 //mode와 class 결과 동일
mode(int) # "numeric"
mode(string) # "character"
mode(x) # "logical"
class(int) # "numeric"
class(string) # "character"
class(x) # "logical"
문자 벡터와 그래프 생성
gender <- c("man","woman","woman","man","man")
plot(gender) #Error. 입력이 수량의 형태여야만 시각화된 결과를 출력.
as.factor() 함수를 이용해 요인형 변환
Ngender <- as.factor(gender) # 변수에서 가질 수 있는 범주
table(Ngender)
#Ngender
#man woman #범주별로 구분
#3 2 #빈도수를 return
factor형 변수로 차트 그리기
plot(Ngender)
mode(Ngender) # "numeric" 자료형
class(Ngender) # "factor" 자료 구조