- Ganhar confiança transformando um data frame para o escopo, a estrutura e a medida apropriados para analisar
Primeiro, ações que definem o escopo de nossos dados:
flights
flights %>% select(air_time)
flights %>% select(air_time)
flights
flights %>% slice(1:2)
flights %>% slice(1:2)
flights
flights %>% filter(origin=="JFK")
flights %>% filter(origin=="JFK")
==
>
, <
<=
, >=
&
|
%in%
filter(dep_delay>=0)
filter(carrier %in% c("UA","DL","AA"))
filter((origin=="JFK" | origin=="EWR") & carrier=="UA")
flights %>% filter((origin=="JFK" | origin=="EWR") & carrier=="UA")
flights %>% filter(origin=="JFK" & air_time<=40)
flights
flights %>% rename("airline"="carrier")
flights %>% rename("airline"="carrier")
Segundo, ações para calcular a medida / estatística que precisamos
flights
flights %>% mutate(air_time=round(air_time/60,3))
flights %>% mutate(air_time=round(air_time/60,3))
flights
flights %>% summarize(avg_distance=mean(distance,na.rm=TRUE))
flights %>% summarize(avg_distance=mean(distance,na.rm=TRUE))
flights
flights %>% count()
flights
flights %>% group_by(carrier) %>% summarize(avg_distance=mean(distance,na.rm=TRUE))
flights %>% group_by(carrier) %>% summarize(avg_distance=mean(distance,na.rm=TRUE))
Terceiro, ações que reestruturam nossos dados:
flights
flights %>% arrange(air_time)
flights %>% arrange(air_time)
flights %>% arrange(-air_time)
flights %>% arrange(-air_time)
flights
flights %>% spread(key="origin",value="dep_delay")
flights %>% spread(key="origin",value="dep_delay")
flights
flights %>% gather(key="measure",value="value",-c(carrier,origin))
flights %>% gather(key="measure",value="value",-c(carrier,origin))
Cada analise precisa uma sequência diferente de ações, mas uma estratégia geral é:
filter
para as linhas relevantesselect
e rename
para tirar dados desnecessáriosgroup_by
subgrupossummarize
ou mutate
spread
/gather
o data frame para que cada linha é uma unidadearrange
o data frame na ordem desejadofilter
só para JFKselect
as variáveis de companhia aérea, mês e atrasogroup_by
companhia aérea e mêssummarize
para calcular o atraso médiospread
o data frame para que cada companhia aérea é uma linha e cada mês é uma coluna2 - Refine o escopo da análise
- filter
só para JFK
flights_analysis <- flights %>% filter(origin=="JFK")
2 - Refine o escopo da análise
- select
as variáveis de companhia aérea, mês e atraso
flights_analysis <- flights_analysis %>% select(carrier,month,dep_delay)
3 - 'Split' os dados em subgrupos para análise
- group_by
companhia aérea e mês
flights_analysis <- flights_analysis %>% group_by(carrier,month)
4 - 'Apply' um cálculo ou resumo estatístico para cada subgrupo
- summarize
para calcular o atraso médio
flights_analysis <- flights_analysis %>% summarize(avg_delay=mean(dep_delay,na.rm=TRUE))
5 - 'Combine' para a sua unidade de análise desejada
- spread
o data frame para que cada companhia aérea é uma linha e cada mês é uma coluna
flights_analysis <- flights_analysis %>% spread(key="month",value="avg_delay")
Tudo juntos:
flights_analysis <- flights %>% filter(origin=="JFK") %>% select(carrier,month,dep_delay) %>% group_by(carrier,month) %>% summarize(avg_delay=mean(dep_delay,na.rm=TRUE)) %>% spread(key="month",value="avg_delay")
Qual é a média de distâncias de voos saindo de LaGuardia (LGA)?
Qual é a velocidade média dos voos de cada aeroporto de origem?
Qual é o destino do voo mais rápido operado pela American Airlines (AA)?
Qual é o desvio padrão dos atrasos de partida em cada mês?
Qual operadora opera a maioria dos voos após as 22h em maio?
1 - Qual é a média de distâncias de voos saindo de LaGuardia (LGA)?
flights %>% filter(origin=="LGA") %>% summarize(avg_distance=mean(distance,na.rm=TRUE))
2 - Qual é a velocidade média dos voos de cada aeroporto de origem?
flights %>% group_by(origin) %>% mutate(speed=distance/air_time) %>% summarize(avg_speed=mean(speed,na.rm=TRUE))
3 - Qual é o destino do voo mais rápido operado pela American Airlines (AA)?
flights %>% filter(carrier=="AA") %>% mutate(speed=distance/air_time) %>% arrange(-speed) %>% slice(1) %>% select(dest)
4 - Qual é o desvio padrão dos atrasos de partida em cada mês?
flights %>% group_by(month) %>% summarize(sd_delays=sd(dep_delay,na.rm=TRUE))
5 - Qual operadora opera a maioria dos voos após as 22h em maio?
flights %>% filter(month==5 & hour>=10) %>% group_by(carrier) %>% count() %>% ungroup() %>% arrange(-n) %>% slice(1) %>% select(carrier)
Queremos encontrar a velocidade média dos voos da United (UA).
avg_speed <- flights %>% filter(carrier=="UA") %>% mutate(speed=distance/(air_time/60)) %>% summarize(avg_speed=mean(speed,na.rm=TRUE)) %>% round(1)
A velocidade média dos vôos da United é `r avg_speed`
milhas por hora.
A velocidade média dos vôos da United é 420.9 milhas por hora.