정보
-
업무명 : R을 이용한 통계 분석 및 데이터 시각화 : readr
-
작성자 : 박진만
-
작성일 : 2020-04-09
-
설 명 :
-
수정이력 :
내용
[개요]
-
R은 통계 분석 및 시각화 등의 기능을 갖춘 프로그래밍 언어 내지 통계 분석 환경입니다.
-
통계 분석 기능으로 통계 검정, 선형 회귀 분석, 시계열 데이터 분석, 클러스터링 등을 지원하고 있습니다.
-
또한 최신 논문에서 발표된 같은 새로운 기술도 R로 구현되는 경우가 많습니다.
-
특히 시각화 기능으로 히스토그램, 막대 그래프, 선 그래프, 산포도, 나무 모양 그림이나 히트맵 등 기본적인 그래프가 기본으로 지원하고 있습니다.
-
또한 ggplot2 등의 패키지를 사용하여 더 높은 수준의 그림을 가시화할 수 있습니다.
[특징]
-
데이터를 이해하기 위해서 통계 분석 및 데이터 시각화가 요구되며 이 프로그램은 이러한 목적을 달성하기 위한 소프트웨어
[기능]
-
데이터형 소개
[활용 자료]
-
없음
[자료 처리 방안 및 활용 분석 기법]
-
없음
[사용법]
-
소스 코드 예시 참조
[사용 OS]
-
Windows 10
[사용 언어]
-
R v3.6.2
-
R Studio v1.2.5033
소스 코드
[readr]
-
readr 패키지는 파일에서 데이터를 읽거나 데이터를 파일로 내보내거나 문자열을 구문 분석 할 때 사용하는 함수를 정리 한 패키지이다.
-
즉 파일을 읽거나 문자열을 조작 할 수있는 함수는 R에 표준 구현되어있으나, R의 표준 함수에 비해 readr 함수가 처리 속도가 빠르며 직관적이며 사용하기 쉬운 경우가 많다.
[파일 로드]
-
readr 패키지는 파일에서 데이터를 읽어 들일 때 사용하는 함수로 read_csv나 read_tsv 등이 준비되어있다. 이 함수는 R의 표준 함수 인 read.csv이나 read.table함수와 거의 같은 기능을 가지지만, 다음과 같은 점에서 다르다.
-
readr 패키지 함수가 R 표준 함수에 비해 파일을 읽는 속도가 약 10 배 빠른.
-
read_csv나 read_tsv함수에 참견하는 기능이 없다.
-
문자열 데이터를 마음대로 인자 형식으로 변환한다.
-
열 이름을 마음대로 (X.1, X.2, X.3 등과 같이) 변환하지 않는다.
-
-
로드 된 데이터는 tibble 형의 객체로 저장된다. (R 표준 함수는 데이터 프레임 형의 객체로 저장된다.)
[csv 파일 가져오기]
d <- read_csv('data/rice.csv')
[tsv 파일 가져오기]
d <- read_tsv('data/rice.tsv')
[기타 구분자 파일 가져오기]
-
구분 기호를 지정하여 파일에서 데이터를 읽어 들일 때 read_delim함수를 사용한다. 이 때 구분 기호를 delim 옵션으로 지정한다.
d <- read_delim('data/rice.txt', delim = '\t'))
[파일 쓰기]
-
파일 내보내기위한 함수는 write_csv, write_tsv, write_delim등의 기능이 포함되어있다.
-
이 함수를 사용하여 데이터를 파일에 저장할 때 문자 코드가 UTF-8로 저장된다.
-
사용법은 R의 표준 함수와 거의 동일하게 사용한다.
write_csv(d, 'data/results.csv')
write_tsv(d, 'data/results.csv')
write_tsv(d, 'data/results.csv', delim = ';')
[문자열 파싱]
-
readr 패키지는 문자열을 파싱하기위한 함수가 준비되어있다.
함수 | 기능 |
parse_logical | 문자열 이론 형 (`TRUE` 또는`FALSE`)로 변환한다. |
parse_integer | 문자열을 정수로 변환한다. |
parse_double | 문자열을 소수 형으로 변환한다. |
parse_character | 문자열을 문자로 변환한다. UTF-8 이외의 문자열 코드에서 UTF-8로 변환 할 때 사용한다. |
parse_datetime | 문자열을 datetime 데이터 형식으로 변환한다. |
parse_date | 문자열을 date 형으로 변환한다. |
parse_time | 문자열을 time 형식으로 변환한다. |
parse_number | 문자열에 포함 된 숫자를 정수로 변환한다. |
x <- c('TRUE', 'FALSE')
y <- parse_logical(x)
print(y)
## [1] TRUE FALSE
x <- c('64')
y <- parse_integer(x)
print(y)
## [1] 64
x <- c('3.14')
y <- parse_integer(x)
## Warning: 1 parsing failure.
## row col expected actual
## 1 -- no trailing characters .14
print(y)
## [1] NA
## attr(,"problems")
## # A tibble: 1 x 4
## row col expected actual
##
## 1 1 NA no trailing characters .14
x <- c('3.14')
y <- parse_double(x)
print(y)
## [1] 3.14
x <- "\x82\xb1\x82\xf1\x82\xc9\x82\xbf\x82\xcd"
y <- parse_character(x, locale = locale(encoding = "Shift-JIS"))
print(y)
## [1] "こんにちは"
x <- "2019-10-20 10:00:00"
y <- parse_datetime(x)
print(y)
## [1] "2019-10-20 10:00:00 UTC"
x <- "2019-10-20"
y <- parse_date(x)
print(y)
## [1] "2019-10-20"
x <- "23:00:00"
y <- parse_time(x)
print(y)
## 23:00:00
x <- "11:00:00 pm"
y <- parse_time(x)
print(y)
## 23:00:00
print(parse_number("123,456,789")) # US, JP, ...
## [1] 123456789
print(parse_number("123.456.789", locale = locale(grouping_mark = "."))) # EU
## [1] 123456789
print(parse_number("123'456'789", locale = locale(grouping_mark = "'"))) # CH
참고 문헌
[논문]
- 없음
[보고서]
- 없음
[URL]
- 없음
문의사항
[기상학/프로그래밍 언어]
- sangho.lee.1990@gmail.com
[해양학/천문학/빅데이터]
- saimang0804@gmail.com
본 블로그는 파트너스 활동을 통해 일정액의 수수료를 제공받을 수 있음
'프로그래밍 언어 > R' 카테고리의 다른 글
[R] KLAPS 수치예측 모델 자료를 이용하여 내삽 방법 (Multi level B-Spline Approximation, Kriging)에 따른 전처리 및 가시화 (0) | 2020.04.14 |
---|---|
[R] R을 이용한 통계 분석 및 데이터 시각화 : dplyr (2) | 2020.04.09 |
[R] R을 이용한 통계 분석 및 데이터 시각화 : tidyr (0) | 2020.04.08 |
[R] R을 이용한 통계 분석 및 데이터 시각화 : ggplot2 (유효숫자 표시) (0) | 2020.04.07 |
[R] R을 이용한 통계 분석 및 데이터 시각화 : ggplot2 (색과 채우기 지정) (0) | 2020.04.07 |
최근댓글