본문 바로가기
반응형

R tidyverse18

[ggplot2의 이해] 8. 히스토그램 (geom_histogram) 1. 히스토그램 그리기 내장 데이터인 mpg를 이용하여 박스플롯을 그려보았습니다. hwy 라는 열을 사용할 것인데, hwy 는 highway miles per gallon 입니다. 연비라고 생각하면 됩니다. 그래프를 그려봅시다. 다양한 옵션들을 넣어보았는데 필요 없는 것은 제거하고 사용하시면 됩니다. 설명은 주석에 있습니다. library(tidyverse) ggplot()+ geom_histogram(data=mpg,aes(x=hwy))+ #binwidth 로 간격 조절 가능 labs(title="geom_histogram",x='hwy')+ #제목, 축이름 theme(title = element_text(size=20,face='bold'))+ #제목 서식 theme(axis.title = eleme.. 2023. 2. 10.
[ggplot2의 이해] 7. 값을 출력하는 막대그래프 (geom_col) ggplot2 에서 제공하는 막대그래프는 두 종류가 있습니다. geom_bar 와 geom_col 입니다. geom_bar 는 하나의 범주형 변수를 이용하여 막대그래프를 그립니다. 예를들어 데이터가 (사과,사과,귤,바나나,바나나,바나나) 라면 세개의 막대가 그려집니다. 이때 세로축은 원소의 수가 됩니다. geom_col 은 범주형 독립변수와 연속형 종속변수를 이용하여 막대그래프를 그립니다. 이번 글에서는 geom_col 를 이용해서 막대그래프를 그려봅시다. 1. 막대그래프 그리기 내장 데이터인 mpg를 이용하여 막대그래프를 그려보았습니다. mpg 는 자동차 데이터입니다. 총 11개의 변수가 있는데요. 독립변수로 class 를 선택하고, 종속변수로 hwy 를 선택하겠습니다. class 는 차의 타입이고, .. 2023. 2. 8.
[R dplyr의 이해] 10. 원하는 열의 통계량 출력하기 (summarise, group_by) summarise 함수를 이용하면 데이터프레임 열의 다양한 통계량을 보기 좋게 출력할 수 있습니다. 1. 통계량 출력하기 iris 데이터에서 Sepal.Length 의 평균과 표준편차를 출력해봅시다. iris %>% summarise( mean(Sepal.Length),sd(Sepal.Length)) ##출력결과 > iris %>% summarise( mean(Sepal.Length),sd(Sepal.Length)) mean(Sepal.Length) sd(Sepal.Length) 1 5.843333 0.8280661 아래와 같이 출력되는 열 이름을 지정해줄 수도 있습니다. iris %>% summarise( mean=mean(Sepal.Length),stdev=sd(Sepal.Length)) ##출력결과.. 2023. 2. 8.
[R dplyr의 이해] 9. 연산을 통한 열 변형 혹은 생성 (mutate 함수) muatate 함수는 기존 열을 변형하거나, 기존 열을 이용하여 새로운 열을 생성하는 함수입니다. 1. 기존 열 변환 오늘 사용할 iris 데이터는 아래와 같습니다. > head(iris) Sepal.Length Sepal.Width Petal.Length Petal.Width Species 1 5.1 3.5 1.4 0.2 setosa 2 4.9 3.0 1.4 0.2 setosa 3 4.7 3.2 1.3 0.2 setosa 4 4.6 3.1 1.5 0.2 setosa 5 5.0 3.6 1.4 0.2 setosa 6 5.4 3.9 1.7 0.4 setosa iris 데이터를 dt 라는 변수에 저장하고, Sepal.Length 열에 10을 곱해봅시다. 결과를 다시 dt에 넣어주여야 dt가 변형됩니다. dt=.. 2023. 2. 8.
[R dplyr의 이해] 8. 유니크한 값만 추출하기 (distinct) distinct 함수를 이용하면 데이터프레임에서 선택한 열의 유니크한 값을 추출할 수 있습니다. 1. 하나의 열에서 유니크한 값 추출하기 mpg 데이터의 manuracturer 열의 유니트한 값들을 출력해봅시다. mpg %>% distinct(manufacturer) > mpg %>% distinct(manufacturer) # A tibble: 15 × 1 manufacturer 1 audi 2 chevrolet 3 dodge 4 ford 5 honda 6 hyundai 7 jeep 8 land rover 9 lincoln 10 mercury 11 nissan 12 pontiac 13 subaru 14 toyota 15 volkswagen 2. 여러 열에서 유니크한 값 출력하기 cyl 열을 기준으로 내.. 2023. 2. 8.
[R dplyr의 이해] 7. 데이터프레임 오름차순, 내림차순 정렬하기 (arrange) arrange 함수를 이용하면 데이터프레임에서 특정 열을 기준으로 오름차순 또는 내림차순 정렬을 할 수 있습니다. 1. 하나의 열을 기준으로 정렬 mtcars 데이터에서 mpg 열을 기준으로 오름차순 정렬하는 방법은 아래와 같습니다. mtcars %>% arrange(mpg) 같은 열을 기준으로 내림차순 정렬하는 방법은 아래와 같습니다. mtcars %>% arrange(desc(mpg)) 2. 여러 열을 기준으로 정렬 cyl 열을 기준으로 내림차순 정렬한 뒤, 그 안에서 mpg 를 기준으로 오름차순 정렬하는 방법은 아래와 같습니다. mtcars %>% arrange(desc(cyl),mpg) 2023. 2. 8.
[ggplot2의 이해] 6. 원소 수를 출력하는 막대그래프 (geom_bar) ggplot2 에서 제공하는 막대그래프는 두 종류가 있습니다. geom_bar 와 geom_col 입니다. geom_bar 는 하나의 범주형 변수를 이용하여 막대그래프를 그립니다. 예를들어 데이터가 (사과,사과,귤,바나나,바나나,바나나) 라면 세개의 막대가 그려집니다. 이때 세로축은 원소의 수가 됩니다. geom_col 은 범주형 독립변수와 연속형 종속변수를 이용하여 막대그래프를 그립니다. 이번 글에서는 geom_bar 를 이용해서 막대그래프를 그려봅시다. 1. 막대그래프 그리기 내장 데이터인 mpg를 이용하여 막대그래프를 그려보았습니다. mpg 는 자동차 데이터입니다. 총 11개의 독립변수가 있는데요. 이들 중 , manufacturer(제조사) 를 사용하겠습니다. 그래프를 그리면 제조사 별로 차가 몇.. 2023. 2. 7.
[R dplyr의 이해] 6. 원하는 열 추출 및 제외하기 (select) 1. 원하는 열 추출하기 내장데이터인 mpg 데이터에서 model과 year 열을 추출해봅시다. mpg %>% select(model,year) 2. 원하지 않는 열 제외하기 mpg 데이터에서 drv 열을 제외해봅시다. 마이너스를 붙이면 됩니다. mpg %>% select(-drv) 2023. 2. 7.
[R dplyr의 이해] 5. 조건을 만족하는 행 추출 (filter) tidyverse의 dplyr(디플라이알)에서 제공하는 filter 함수는 특정 조건을 만족하는 행만 추출하는 함수입니다. 내장데이터인 mpg를 이용해서 실습해봅시다. mpg 는 자동차 데이터입니다. > mpg # A tibble: 234 × 11 manufacturer model displ year cyl trans drv cty hwy fl class 1 audi a4 1.8 1999 4 auto(l5) f 18 29 p compact 2 audi a4 1.8 1999 4 manual(m5) f 21 29 p compact 3 audi a4 2 2008 4 manual(m6) f 20 31 p compact 4 audi a4 2 2008 4 auto(av) f 21 30 p compact 5 audi.. 2023. 2. 7.
[R dplyr의 이해] 4. 주요 함수 한눈에 보기 tidyverse 의 dplyr 패키지에는 아래와 같은 주요 함수들이 있습니다. 1) filter 함수 : 행 선택 2) select 함수 : 열 선택 3) arrange : 정렬 4) distinct : 유니크한 값만 출력 5) mutate 함수 : 연산을 통한 열 변환 혹은 생성 6) summarise 함수 : 원하는 열의 통계량 출력 7) group_by 함수 : 그룹화 다음시간부터 하나씩 공부해봅시다. 2023. 2. 7.
[ggplot2의 이해] 5. 박스플롯 (geom_boxplot) 1. 박스플롯 그리기 MASS 패키지에서 제공하는 데이터인 Car93을 이용하여 박스플롯을 그려보았습니다. 독립변수는 자동차의 Type 이고, 종속변수는 자동차의 가격 입니다. 그래프를 그려봅시다. 다양한 옵션들을 넣어보았는데 필요 없는 것은 제거하고 사용하시면 됩니다. 설명은 주석에 있습니다. library(MASS) #Car93 데이터가 들어 있음 library(tidyverse) ggplot(data=Cars93,aes(x=Type,y=Price))+ geom_boxplot(outlier.color='red')+ labs(title="geom_boxplot",x='Type',y='Price')+ #제목, 축이름 theme(title = element_text(size=20,face='bold'))+.. 2023. 2. 6.
[ggplot2의 이해] 4. 선그래프 (geom_line) 1. 선 그래프 그리기 내장데이터인 Orange 를 이용하여 선그래프를 그려보았습니다. Orange 데이터는 다섯 종류 나무의 나이에 따른 테두리 둘레 데이터입니다. 1번 나무의 데이터만 Orange_1 에 저장합시다. Orange_1=Orange[Orange['Tree']==1,] 그래프를 그려봅시다. 주요한 옵션들만 넣었습니다. 주요 옵션은 제목, 축이름, 서식, 가운데정렬입니다. 설명은 주석으로 대신합니다. library(tidyverse) ggplot(data=Orange_1,aes(x=age,y=circumference))+ geom_line()+ labs(title="geom_line",x='age',y='circumference')+ #제목, 축이름 theme(title = element_t.. 2023. 2. 6.
[ggplot2의 이해] 3. 산점도 (geom_point) 1. 산점도 그리기 내장데이터인 iris 를 이용하여 산점도를 그려보았습니다. 주요한 옵션들만 넣었습니다. 주요 옵션은 제목, 축이름, 서식, 가운데정렬입니다. 설명은 주석으로 대신합니다. library(tidyverse) ggplot(data=iris,aes(x=Sepal.Length,y=Sepal.Width))+ geom_point()+ labs(title="geom_point",x='Sepal Length',y='Sepal Width')+ #제목, 축이름 theme(title = element_text(size=20,face='bold'))+ #제목 서식 theme(axis.title = element_text(size=10,face='bold'))+ #축서식 theme(plot.title = el.. 2023. 2. 3.
[R dplyr의 이해] 3. 파이프 연산자 %>% tidyverse나 dplyr은 몰라도 파이프 연산자는 아는 사람이 있을 정도로 유명하고 유용한 연산자입니다. 우리가 어떤 변수 x에 평균과 반올림 함수를 적용했다고 합시다. 아래와 같습니다. round(mean(x)) 파이프 연산자를 이용하면 위 코드를 아래와 같이 쓸 수 있습니다. x %>% mean %>% round 만약 옵션이 있다면, 옵션은 어떻게 설정해야할까요? iris 데이터에 head 함수를 사용하는 상황을 생각해봅시다. 옵션을 설정하여 세 줄만 출력할 것입니다. > head(iris,n=3) Sepal.Length Sepal.Width Petal.Length Petal.Width Species 1 5.1 3.5 1.4 0.2 setosa 2 4.9 3.0 1.4 0.2 setosa 3 4.. 2023. 1. 30.
[R dplyr의 이해] 2. tibble 자료구조 dplyr 에서는 데이터프레임과 비슷한 자료구조인 tibble 자료구조를 제공합니다. tibble 자료구조 대신 그냥 데이터프레임을 사용해도 상관은 없습니다. tibble 자료구조는 나름 데이터프레임을 '개선'한 자료구조입니다. iris 자료를 가져옵시다. iris 자료는 데이터프레임입니다. > df=iris > df Sepal.Length Sepal.Width Petal.Length Petal.Width Species 1 5.1 3.5 1.4 0.2 setosa 2 4.9 3.0 1.4 0.2 setosa 3 4.7 3.2 1.3 0.2 setosa 4 4.6 3.1 1.5 0.2 setosa 5 5.0 3.6 1.4 0.2 setosa 6 5.4 3.9 1.7 0.4 setosa 7 4.6 3.4 1.. 2023. 1. 29.
[ggplot2의 이해] 2. ggplot2의 기본구조 ggplot2 를 공부하기 전에 먼저 아래 패키지를 설치합시다. install.packages("tidyverse") 이 패키지를 설치하면 tidyverse 의 모든 패키지를 사용할 수 있습니다. 이제 본격적으로 ggplot2 를 공부해봅시다. ggplot2 는 데이터프레임(또는 tibble)을 이용하여 그리는 것을 원칙으로 합니다. 우리가 다루는 데이터프레임이 변수 df 에 들어있다고 합시다. 어떤 그래프를 그릴 것인지와 상관 없이 아래 코드로 시작합니다. ggplot(data=df) "그래프를 그릴 것이고 데이터는 df 를 사용할 것이다" 라는 뜻입니다. 이제 그릴 그래프를 선택해야 합니다. 그래프를 그려주는 함수들은 아래와 같습니다. 더 여러가지 종류가 있지만 자주 사용되는 함수들만 가져왔습니다. .. 2023. 1. 28.
[ggplot2의 이해] 1. ggplot2란 무엇인가? R 안에는 tidyverse 라는 또 하나의 세계가 있습니다. tidyverse는 Hadley Wickham과 그의 팀이 개발한 패키지 모음을 말합니다. tidyverse 없이도 R을 사용하는데 전혀 문제가 없지만, tidyverse 를 사용하면 데이터 전처리,시각화 등이 편해집니다. 시중에 출시되고 있는 R을 이용한 데이터분석 및 시각화 책들은 tidyverse 패키지를 사용하고 있기 때문에 R로 데이터 분석을 한다면 거의 필수적으로 사용해야 하는 패키지가 되었습니다. tidyverse 안에는 아래 패키지들이 있습니다. dplyr : 데이터 전처리 ggplot2 : 시각화 readr : 데이터 호출 lubridate : 시계열 데이터 전처리 stringr : 텍스트 전처리 purrr : 함수형 패키지 .. 2023. 1. 27.
[R dplyr의 이해] 1. dplyr이란 무엇인가 R 안에는 tidyverse 라는 또 하나의 세계가 있습니다. tidyverse는 Hadley Wickham과 그의 팀이 개발한 패키지 모음을 말합니다. tidyverse 없이도 R을 사용하는데 전혀 문제가 없지만, tidyverse 를 사용하면 데이터 전처리,시각화 등이 편해집니다. 시중에 출시되고 있는 R을 이용한 데이터분석 및 시각화 책들은 tidyverse 패키지를 사용하고 있기 때문에 R로 데이터 분석을 한다면 거의 필수적으로 사용해야 하는 패키지가 되었습니다. tidyverse 안에는 아래 패키지들이 있습니다. dplyr : 데이터 전처리 ggplot2 : 시각화 readr : 데이터 호출 lubridate : 시계열 데이터 전처리 stringr : 텍스트 전처리 purrr : 함수형 패키지 .. 2023. 1. 17.
반응형