R 은 행렬연산을 간단하게 처리할 수 있다. 행렬에 단순한 사칙연산 뿐 아니라, 행렬끼리의 곱셈 등 연산이 쉽게 가능하다. 우선 하나의 행렬을 정의하고 전치행렬을 구해본다. m1 = matrix(1:12, ncol = 4) m1 # 출력결과(변경전) [,1] [,2] [,3] [,4] [1,] 1 4 7 10 [2,] 2 5 8 11 [3,] 3 6 9 12 t(m1) # 출력결과(전치행렬 변경후) [,1] [,2] [,3] [1,] 1 2 3 [2,] 4 5 6 [3,] 7 8 9 [4,] 10 11 12 행렬에다 단순 사칙연산도 쉽게 가능하다. m1 [,1] [,2] [,3] [,4] [1,] 1 4 7 10 [2,] 2 5 8 11 [3,] 3 6 9 12 m1 + 10 [,1] [,2] [,3] ..
R 프로그램에서 벡터를 만드는 방법은 여러가지가 있다. 직접 입력하거나, seq/rep/sample 등의 벡터생성하는 함수들을 사용하거나, 빈값으로 length 만 정하는 등 여러가지이다. 실제 퍼포먼스는 어떨지는 좀 확인은 해봐야겠으나, loop 를 사용하는 것은 R 에서는 권장하진 않는다. 일반적인 프로그램언어라면 for/while 문은 어느정도의 기본 문법이다보니 사용을 많이 하게 되는데, R 에서는 대부분 벡터를 입력받아 벡터로 리턴하는 함수체계가 대부분이라 loop 를 거의 사용하지 않도록 코딩을 할 수 있다. 특정 조건을 만족하는 숫자인 경우, 문자열로 치환하여 별도의 벡터형으로 저장해보자. 0~4는 C등급, 5~8은 B등급, 9~10은 A등급으로 변경하려면 어떻게 해야 할까. 일반적이라면 f..
ggplot2 그래프 일부분만 줌인해서 확대해서 보거나, 더 넓은 범위위에서 전체그림을 보고 싶을 때가 있다. ggplot 라이브러리의 coord_cartesian 함수를 사용하면 그래프를 x축 y축을 축소, 확대 하는게 손쉽게 가능하다. 가볍게 라인그래프 하나 그려본다. library(tidyverse) t = tibble(x = c(4,5,6), y = c(50, 30, 40)) ggplot(t, aes(x, y))+ geom_line() 여기서 값은 3개뿐이지만, 그 외의 범위로 보고 싶다면 어떻게 해야 할까. 만약 x 축을 1~10의 범위로 보고싶다면, 아래와 같이 실행하면 된다. limits 로 1에서부터 10까지 보고싶은 범위를 지정하고, breaks 를 이용해서 x 축의 레이블을 정한다. 2..
숫자와 문자가 섞여있을때, 문자만 분리하고 싶다면, 아래와 같이 하면된다. 경고메시지가 나오긴 하지만 무시해도 된다. a = c(10,10,10, 'a', 'b', 'c', 20, 30, 'd') # [1] "10" "10" "10" "a" "b" "c" "20" "30" "d" as.numeric(a) # [1] 10 10 10 NA NA NA 20 30 NA is.na(as.numeric(a)) # [1] FALSE FALSE FALSE TRUE TRUE TRUE FALSE FALSE TRUE a[is.na(as.numeric(a))] # [1] "a" "b" "c" "d" # Warning message: # NAs introduced by coercion 데이터 프레임으로 하는 경우도 비슷하다. ..
텍스트 데이터 분석을 위한 tidytext 라이브러리의 unnest_tokens 함수에 대한 사용 예제를 정리한다. 샘플데이터를 우선 하나 d 로 정의한다. library(tidytext) library(dplyr) library(janeaustenr) d % unnest_tokens(word, txt) # 둘다 동일한 결과를 만든다. d %>% unnest_tokens(output = word, input = txt, token = "words") # A tibble: 122,204 × 1 word 1 pride 2 and 3 prejudice 4 by 5 jane 6 austen 7 chapter 8 1 9 it 10 is # … with 122,194 more rows 빌트인 token 옵션만 사용..
ggplot 으로 그래프를 그리다보면, x 축에 너무 많은 값들이 표기가되서 너무 빽빽하게 보이는 현상이 있다. 이건 아마도 문자열값(character)이다보니 발생하는 문제인데, 일부 대표값 혹은 본인이 원하는 특정값만 가지고 x축을 표현할 수 있다. 아래 그림을 보면, x 축의 값들이 너무 빽빽하다보니 중첩되서 알아볼 수 없게 된다. t1 = tibble(연도 = paste0(as.character(2015:2026), '-01-01'), 인구수 = c(1014, 1245, 1446, 1635, 1811, 1973, 2123, 2261, 2388, 2504, 2609, 2704)) t1 # A tibble: 12 × 2 # 연도 인구수 # # 1 2015-01-01 1014 # 2 2016-01-01..
R 에서 데이터를 다루기 위해서는 필수적으로 알아야 하는게 matrix 이다. matrix data.frame tibble 로 왔다갔다 할 줄 알아야 데이터 처리에 능하게 된다. matrix 사용법은 간단하다. 어려운 설정이 거의 없어서 아래 예제만 보면 대략 이해할 수 있다. matrix(c(0.05, 0.15, 0.0, 0.10, 0.25, 0.25, 0, 0.1, 0.1)) # [,1] # [1,] 0.05 # [2,] 0.15 # [3,] 0.00 # [4,] 0.10 # [5,] 0.25 # [6,] 0.25 # [7,] 0.00 # [8,] 0.10 # [9,] 0.10 matrix(c(0.05, 0.15, 0.0, 0.10, 0.25, 0.25, 0, 0.1, 0.1), ncol = 3) #..
- Total
- Today
- Yesterday
- MongoDB
- Oracle
- ggplot
- eclipse
- 도넛차트
- github
- R
- ktm모바일
- ubuntu
- 마인크래프트
- Spring
- 데이터쉐어링
- docker
- 아이맥
- javascript
- 막대그래프
- MySQL
- SVN
- heroku
- 개러지밴드
- ggplot2
- 셀프개통
- java
- MyBatis
- python
- Google Chart Tools
- 이클립스
- 자급제폰
- vagrant
- 알뜰요금제
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |