Data visualization/데이터시각화(R)

데이터시각화(R)_Texas flight data

뉴욕킴 2023. 11. 11. 03:54

1. 텍사스주의 달라스와 휴스턴에 도착하는 비행만을 뽑아서 Texas 에 저장하시오. (공항코드: DFW IAH HOU)

library(nycflights13)
library(tidyverse)
library(lubridate)
library(ggplot2)
flights
head(flights)

Texas <- flights %>%
  filter(dest %in% c("DFW", "IAH", "HOU"))


 2. Texas에서 dep_delay와 arr_delay관계 살펴보기

library(ggplot2)
Texas %>% ggplot(aes(dep_delay, arr_delay))+geom_point()


 3. Texas에서 비행 중 발생한 delay 분포살펴보기

Texas %>% mutate(pure_delay = arr_delay-dep_delay) %>%
 ggplot(aes(pure_delay))+geom_histogram()

- pure_delay라는 새로운 변수 생성= arr-delay - dep_delay



4. Texas에서 일별 비행건수를 계산하고 그림으로 나타내시오

AA <- flights %>%
  transmute(date = as.Date(paste(year, month, day, sep = "-"))) %>%
  group_by(date) %>%
  summarize(n = n())

AA %>% ggplot(aes(date, n)) + geom_line()

- transmute() 함수를 적용해 date라는 새로운 변수 생성

→ year, month, day를 -으로 연결한 문자열을 as.Date() 함수를 사용하여 날짜 형식으로 변환한 값 

- paste() 함수는 문자열을 결합하는 데 사용되며, transmute() 함수와 함께 사용할 때는 주로 열들의 값을 결합하여 새로운 열을 생성하는 데 활용

 

- summarize() 함수를 사용하여 각 날짜별로 비행 건수(n)를 계산하여 AA에 저장 


 5. Texas에서 각 주별로 요일마다의 비행건수 변화를 알아보려고 한다. 알맞은 그림을 그리시오

weekly_flights <- Texas %>%
  mutate(weekday = wday(as.Date(paste(year, month, day, sep = "-")))) %>%
  count(weekday, dest)

ggplot(weekly_flights, aes(x = weekday, y = n, color = dest)) +
  geom_line() +
  labs(x = "요일", y = "비행 건수", color = "도착지") +
  scale_x_continuous(breaks = 1:7, labels = c("일", "월", "화", "수", "목", "금", "토")) +
  ggtitle("Texas에서 각 주별로 요일마다의 비행 건수 변화")

주어진 코드는 Texas 데이터셋을 사용하여 주별로 요일마다의 비행 건수 변화를 시각화하는 코드입니다.

먼저, mutate() 함수를 사용하여 weekday라는 새로운 열을 생성합니다. 이 열은 year, month, day 열을 paste() 함수를 사용하여 결합한 후, as.Date() 함수를 사용하여 날짜 형식으로 변환한 값에서 wday() 함수를 사용하여 요일을 추출합니다.

다음으로, count() 함수를 사용하여 weekday와 dest 열을 기준으로 그룹화하여 각 조합별로 비행 건수(n)를 계산합니다.

이렇게 계산된 결과를 weekly_flights라는 변수에 저장합니다.

마지막으로, ggplot() 함수를 사용하여 선 그래프를 그립니다. aes(x = weekday, y = n, color = dest)는 x축으로 weekday 열을, y축으로 n 열을, 색상을 dest 열을 사용하겠다는 것을 지정합니다. geom_line() 함수는 선 그래프를 그리기 위한 지오메트리 계층입니다. labs() 함수를 사용하여 x축, y축, 색상의 레이블을 지정합니다. scale_x_continuous() 함수를 사용하여 x축의 눈금과 레이블을 설정합니다. ggtitle() 함수를 사용하여 그래프의 제목을 지정합니다.