놀고 싶어요

tidyverse 특징과 함수 본문

R

tidyverse 특징과 함수

챌린지 2021. 5. 8. 22:54

tidyverse 사용 장점

1. data.frame의 특성을 그대로 사용할 수 있다.

2. 쉬워진 데이터 정비 및 재구조화

3. 결과창에 표시되는 깔끔한 내용 -> 사용자의 편리성 대폭 개선

 

함수

1. problems(): 잘못된 데이터 정보를 파악할 수 있다.

2. str(): 데이터 전반에 대한 정보를 알려준다. 

3. summary(): 기본적인 기술통계값을 알 수 있다. 최소값, 최대값, 사분위수 등의 요약 정보를 알려주는 함수

 

 

 

 

 

install.packages("tidyverse")

하위 패키지가 80개가 넘는 패키지로 설치하는데 오래 걸린다.

 

library(tidyverse)

tidyverse를 attach한다.

 

bike_data_tb <- tibble(bike_data)

bike_data 데이터를 tidyverse로 전환하여 새 변수에 입력

 

 

head(bike_data) vs. head(bike_data_tb)

head(bike_data)
head(bike_data_tb)

 

기존의 bike_data 를 head()함수를 사용하여 조회시, 화면의 폭이 넘치는 데이터들을 아래에 이어 출력 함.

bike_data_tb는 bike_data를 tibble 형태로 읽어온다. 표시할 수 있는 만큼만 보여주고 나머지는 컬럼명과 데이터 타입을 보여준다. 모든 컬럼의 데이터 타입이 표시된다.

 

 

 

 

class(bike_data_tb)

tibble형태로 읽어오더라도 data.frame 속성을 상속하여 관련 함수를 사용할 수 있다. 하지만 이 데이터 자체는 base 패키지에는 없지만 tidyverse 패키지에 정의되어 있는 tibble이라는 새로운 구조이다.

 

 

 

tidyverse에서 제공하는 함수로 데이터를 읽어오기

 

bike_data <- read_csv('data/bike_usage_0.csv', locale=locale(encoding="EUC-KR"))

파일을 읽어들이는 과정에서 여러 가지 정보를 제공한다. (읽어 들린 컬럼의 이름, 데이터 타입, 경고 사항 등)

결과 창도 읽기 좋은 상태로 제공된다.

 

좌: 파일 읽어오기, 우: 읽어온 데이터 조회

 

population <- read_delim('data/population_by_Gu.txt',delim='\t')

좌: 파일 읽어오기, 우: 읽어온 데이터 조회

 

 

problems(bike_data)

잘못된 데이터에 대한 정보를 파악할 수 있다.

 

 

숫자형 데이터로 예상되었으나 잘못된 문자(\\N)로 입력되었다는 정보가 행 번호와 함께 제시된다.

 

 

 

head(변수명, 행 수)

 

head(bike_data): 최초 여섯 줄을 읽어옴

head(bike_data, 10): 최초 열 줄 읽어옴

 

데이터의 마지막 줄을 읽어오고 싶을 경우 tail이라는 명령어를 사용하면 된다.

tail(bike_data): 마지막 줄부터 6개의 행 데이터를 가져온다.

dim(bike_data): dim은 dimension을 의미. 행과 열의 크기를 가져온다. 행 열 순서로 나타난다.

str(bike_data): str은 structure를 의미. 데이터의 전반에 대한 정보를 알려준다.

-> NA 인 데이터가 있는 열에 대해서 결측값 처리시 확인이 필요하다.

 

 

주요 메소드

 

count NA값을 제외한 값의 수를 반환
summary 각 열에 대한 요약 통계 (기본적인 기술적 통계값)
min 최소값
max 최대값
sum 합계
mean 평균
median 중앙값
var 분산
std 표준편차
cumsum 누적 합

 

 

sum()함수를 그냥 사용할 경우 숫자형 열이 아닌 경우도 존재하여 오류가 발생한다.

 

 

DataFrame의 특정 컬럼만 추출하여 보는 방법

 

1. 대괄호를 사용하는 방법: 메소드(변수명["컬럼명"])

-> tibble 구조, DataFrame의 구조를 그대로 가지고 있다.

2. $ 표시를 찍고 해당 컬럼 이름을 명시하는 방법: 메소드(변수명$컬럼명)

-> 데이터 타입만 가져가게 됨

 

sum은 동일하지만 class는 numeric과 tibble로 나뉜다.

 

 

 

na.rm

NA remove를 의미한다. 메소드 사용시 추가해준다.

R은 결측값이 있는 경우 계산을 수행하지 못한다. -> NA를 반환한다. -> NA를 제외하고 계산을 수행해야 한다. 

 

sum(bike_data$Carbon_amount)

sum(bike_data$Carbon_amount, na.rm = TRUE)

 

 

 

 

unique

수치형 데이터가 아닌 컬럼의 값을 확인한다.

 

table

전체 데이터에서 타입별 수를 확인한다.

 

 

 

 

 

'R' 카테고리의 다른 글

[R Programming] 데이터 결합  (0) 2021.05.10
[R Programming] 데이터 전처리 / 결측값 및 이상값 처리  (0) 2021.05.09
[R Programming]attributes(), head()  (0) 2021.05.07
[R Programming] summary()  (0) 2021.05.07
[R Programming]data.table  (0) 2021.05.07