-
Notifications
You must be signed in to change notification settings - Fork 0
/
najbardziej_popularna_trasa.R
46 lines (41 loc) · 1.53 KB
/
najbardziej_popularna_trasa.R
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
source("support.R")
library(dplyr)
x <- data.frame()
i <- 0
cat("0%")
"
blok z forem wczytuje po kolei dane z 3 miesięcy 2016 roku i po odrzuceniu wierszy z początkową i końcową stacją tą samą oraz wybraniu
odpowiednich kolumn scala wszytkie miesiące w jedną ramkę danych x
"
for (m in c("05", "06", "07")) {
name = paste("2016", m, sep="")
d <- get_data(name)
d %>%
filter(start.station.id != end.station.id) %>%
select(tripduration, start.station.id,start.station.name, end.station.id, end.station.name)->d
x <- merge(x, d, all=TRUE)
i <- i+1
cat(sprintf("\r%.2f%%", i*100/3)) # progress
}
"
a - zawiera informacje o stacjach i ilokrotnie trasa została przebyta
b - zawiera informacje o długości podróży dla najpopularniejszej trasy (pobranej z a) posortowane malejąco
c - zawiera informacje o długości podróży dla najpopularniejszej trasy (pobranej z a) posortowane rosnąco
d - zawiera informacje o średniej i medianie czasu podróży dla najpopularniejszej trasy (pobranej z a)
"
x %>%
count(start.station.id, start.station.name, end.station.id, end.station.name)%>%
arrange(desc(n))-> a
names(a)<-c("start.station.id", "start.station.name", "end.station.id", "end.station.name", "popularity")
head(a)
x %>%
filter(start.station.id == a[1,1] & end.station.id == a[1,3])->x
x%>%
arrange(desc(tripduration))->b
head(b)
x %>%
arrange(tripduration)->c
head(c)
x %>%
summarise(Mean = mean(tripduration), Mediana = median(tripduration))->d
head(d)