류동균의 R 공부방입니다.
Rstudy 첫번째 글 본문
본격적으로 R programming Study를 하려고한다.
R로 개발을 할때 R studio라는 것을 쓰고 있었지만, R cloud라는 것이 있게 된 것을 알고 R cloud를 사용하게되었다.
R cloud는 구글시트와 비슷하게 웹환경에서 R언어를 깔지 않아도 R을 개발할 수 있는 환경이다. 듣기로는 메모리도 40GB라고 하니 필수적으로 사용해야 한다고 생각한다.
기본적으로 R은 vector라는 것을 쓴다.
vector를 생성하기위해선
c(1 ,2 ,3) 와 같이 작성하면된다.
#1~5까지 수를 생성하기
c(1:5) or seq(1, 5)
#1, 3, 5, 7, 9와 같이 간격을 두고 연속된수를 생성
seq(1, 10 , by = 2)
#컬럼을 추가, 합치기
cbind(x, y)
#행을 추가, 합치기
rbind(x, y)
data.frame은 다차원의 구조를 가진 행렬이라고 보면된다.
기본적으로 r에서 제공하는 iris라는 데이터가 데이터프레임으로 존재한다.
data.frame의 구조나 요약을 판단하기위해서는 다음과같이작성하면된다.
#데이터프레임에서의 원하는 행,열의 값 가져오기
df[row,column]
#데이터의 구조
str(iris)
#데이터의 요약
summary(iris)
#데이터의 1~6번째까지 데이터
head(iris)
#데이터의 끝의 1~6번째 데이터
tail(iris)
# %>%(체인)은 가독성을 높혀준다. 영어로치면 of와 같은 역할을 한다
df <- cbind(a,b)
df <- as.data.frame(c)
#가독성 상승
df <- cbind(a,b) %>%
as.data.frame()
# filter (Data frame 정제)
iris %>%
filter(Petal.Length > 4 & Species == 'versicolor')
# arrange (sort와 같은 역할을 함)
iris %>%
arrange(Petal.Length)
# grep, grepl (특정문자가 포함된행을 찾음)
grep("set",iris[,5])
grep과 grepl은 같은원리로 동작을 하지만
grep은 행번호를 grepl 논리값을 출력한다.
#merge
merge는 엑셀의 vlookup, sql의 join과 같은 개념으로 보면된다.
iris_korean <- data.frame(Species = as.vector(unique(iris$Species)) ,
korean = c('세토사', '버지칼라', '버지니카'))
iris_merge <- merge(iris,iris_korean, by = 'Species', all = TRUE)
'ETC' 카테고리의 다른 글
R을 통한 시스템 자동화 기초 (0) | 2019.10.15 |
---|---|
R 코드로 크롤링을 통한 파일 다운받기 (0) | 2019.10.14 |
프로젝트 관리 툴 트렐로(Trello) (0) | 2019.10.14 |
업무 협업 툴 슬랙(Slack) (0) | 2019.10.14 |
R 시각화 기초 plot (0) | 2019.09.16 |