Skip to content

Commit 255344f

Browse files
simei94Sydpaltra
andauthored
Weather analysis (#65)
* Updated/added some plots * Updated some plots * some more adaptions for plotting * add avg modal shift plot for 6kmh case * small fixes * simplify script, correct data inputs * update on data model * update plots * small corrections * add weekday color to plot * fix loading of wrong select function * add correlation plot * increase font size of plots for better readability * add unsaved changes * adapt plot * add piechart for every AV speed case * make input paths relative --------- Co-authored-by: Sydpaltra <[email protected]>
1 parent 16d313e commit 255344f

File tree

4 files changed

+1098
-646
lines changed

4 files changed

+1098
-646
lines changed

src/main/R/badWeather/dataPrepare.R

+100
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,100 @@
1+
library(lubridate)
2+
library(tidyverse)
3+
library(dplyr)
4+
5+
#this script is an adaptation of an Rmd script which was then deleted.
6+
# I created an .R script because it is more understandable. -sme0823
7+
8+
9+
#read in ikoki data
10+
ioki2020 <- read_csv2("C:/Users/Simon/Documents/shared-svn/projects/KelRide/data/KEXI/2021-04/IOKI_TABLEAU_Request_List_2020.csv")
11+
ioki2021 <- read_csv2("C:/Users/Simon/Documents/shared-svn/projects/KelRide/data/KEXI/2021-05/IOKI_TABLEAU_Request_List_2021.csv")
12+
13+
ioki2020 <- ioki2020 %>% select(1:20,Passagieranzahl,`Nutzer ID`,`Fahrzeug ID`,`Eindeutige Anfrage`,Ersteller)
14+
15+
ioki2021 <- ioki2021 %>% anti_join(ioki2020, by = "Fahrt ID")
16+
allData_ioki <- rbind(ioki2020,ioki2021)
17+
18+
# read in via data
19+
via0621_0122 <- read_csv2("C:/Users/Simon/Documents/shared-svn/projects/KelRide/data/KEXI/Via_data_2022-02-08/Data_request_TUB_for_Kelheim-Actual_Data-VIA_edited.csv")
20+
via0222_1022 <- read_csv2("C:/Users/Simon/Documents/shared-svn/projects/KelRide/data/KEXI/Via_data_2022-10-10/Data_request_TUB_for_Kelheim-Actual_Data-VIA_Feb_to_Oct_2022_edited_cleaned.csv")
21+
via1022_1222 <- read_csv2("C:/Users/Simon/Documents/shared-svn/projects/KelRide/data/KEXI/Via_data_2023-01-17/Data_request_TUB_for_Kelheim-Actual_Data-Oct-Dec_2022-Data_TUB_for_Kelheim-Actual_Data-Oct_to_Dec_22_edited.csv")
22+
via1222_0323 <- read_csv2("C:/Users/Simon/Documents/shared-svn/projects/KelRide/data/KEXI/Via_data_2023-04-19/Data_request_TUB_for_Kelheim-Actual_Data-Jan-Mar_2023-Kelheim-Actual_Data-Jan-Mar_2023_edited.csv")
23+
via0323_0723 <- read_csv2("C:/Users/Simon/Documents/shared-svn/projects/KelRide/data/KEXI/Via_data_2023-07-10/Data_request_TUB_for_Kelheim-Actual_Data-Apr-Jul_2023-Kelheim-Actual_Data-Apr-Jul_23_edited.csv")
24+
25+
via0621_0122 <- via0621_0122 %>%
26+
select(Request.ID,Request.Status,Actual.Pickup.Time,Reason.For.Travel,Request.Creation.Time) %>%
27+
mutate(Actual.Pickup.Time = ymd_hms(Actual.Pickup.Time))
28+
29+
via0222_1022 <- via0222_1022 %>%
30+
select(Request.ID,Request.Status,Actual.Pickup.Time,Reason.For.Travel,Request.Creation.Time) %>%
31+
mutate(Actual.Pickup.Time = ymd_hms(Actual.Pickup.Time), Request.Creation.Time = ymd_hms(Request.Creation.Time)) %>% anti_join(via0621_0122, by = "Request.ID")
32+
33+
via1022_1222 <- via1022_1222 %>%
34+
select(Request.ID,Request.Status,Actual.Pickup.Time,Reason.For.Travel,Request.Creation.Time) %>%
35+
mutate(Actual.Pickup.Time = ymd_hms(Actual.Pickup.Time), Request.Creation.Time = ymd_hms(Request.Creation.Time)) %>% anti_join(via0222_1022, by = "Request.ID")
36+
37+
via1222_0323 <- via1222_0323 %>%
38+
select(Request.ID,Request.Status,Actual.Pickup.Time,Reason.For.Travel,Request.Creation.Time) %>%
39+
mutate(Actual.Pickup.Time = ymd_hms(Actual.Pickup.Time), Request.Creation.Time = ymd_hms(Request.Creation.Time)) %>% anti_join(via1022_1222, by = "Request.ID")
40+
41+
via0323_0723 <- via0323_0723 %>%
42+
select(Request.ID,Request.Status,Actual.Pickup.Time,Reason.For.Travel,Request.Creation.Time) %>%
43+
mutate(Actual.Pickup.Time = ymd_hms(Actual.Pickup.Time), Request.Creation.Time = ymd_hms(Request.Creation.Time)) %>% anti_join(via1222_0323, by = "Request.ID")
44+
45+
test <- unique(via1022_1222$Request.Status)
46+
47+
# allData_via <- rbind(via0621_0122,via0222_1022,via1022_1222,via1222_0323,via0323_0723)
48+
allData_via <- bind_rows(via0621_0122,via0222_1022)
49+
allData_via <- bind_rows(allData_via,via1022_1222)
50+
allData_via <- bind_rows(allData_via,via1222_0323)
51+
allData_via <- bind_rows(allData_via,via0323_0723)
52+
53+
naVia <- allData_via %>% filter(is.na(Actual.Pickup.Time))
54+
#naVia2 <- allData_via %>% filter(is.na(Actual.Dropoff.Time))
55+
naIoki2 <- allData_ioki %>% filter(is.na(Abfahrtszeit))
56+
57+
#print(via0621_0122)
58+
59+
requests_ioki <- allData_ioki %>% mutate(`Fahrtwunsch erstellt` = as.Date(dmy_hms(`Fahrtwunsch erstellt`))) %>% filter(!is.na(`Fahrtwunsch erstellt`)) %>%
60+
mutate(dummy = 1) %>%
61+
group_by(`Fahrtwunsch erstellt`) %>% summarize(noRequests = as.integer(sum(dummy))) %>%
62+
rename(date = `Fahrtwunsch erstellt`)
63+
64+
requests_via <- allData_via %>%
65+
filter(!is.na(`Request.Creation.Time`)) %>%
66+
filter(Reason.For.Travel=="DR") %>%
67+
mutate(`Request.Creation.Time` = as.Date(`Request.Creation.Time`)) %>%
68+
mutate(dummy = 1) %>%
69+
group_by(Request.Creation.Time) %>% summarize(noRequests = as.integer(sum(dummy))) %>%
70+
rename(date = `Request.Creation.Time`)
71+
72+
requests_all <- rbind(requests_ioki,requests_via)
73+
74+
allData_ioki <- allData_ioki %>% mutate(`Abfahrtszeit` = as.Date(dmy_hms(`Abfahrtszeit`))) %>% filter(!is.na(`Abfahrtszeit`))
75+
allData_via <- allData_via %>%
76+
filter(!is.na(`Actual.Pickup.Time`)) %>%
77+
filter(Reason.For.Travel=="DR") %>%
78+
mutate(`Actual.Pickup.Time` = as.Date(`Actual.Pickup.Time`))
79+
80+
allData_ioki <- allData_ioki %>% mutate(ncompl = ifelse(Stornierungsgrund == "ride_completed",1,0))
81+
82+
demandData_ioki <- allData_ioki %>% group_by(`Abfahrtszeit`) %>% summarize(noRides = sum(ncompl))
83+
84+
85+
allData_via <- allData_via %>% mutate(ncompl = ifelse(Request.Status == "Completed",1,0))
86+
87+
demandData_via <- allData_via %>% group_by(`Actual.Pickup.Time`) %>% summarize(noRides = sum(ncompl,na.rm = TRUE))
88+
89+
#Join 2 tables
90+
#rename
91+
demandData_ioki <- demandData_ioki %>% rename(date = `Abfahrtszeit`)
92+
demandData_via <- demandData_via %>% rename(date = `Actual.Pickup.Time`)
93+
94+
demandData_all <- rbind(demandData_ioki,demandData_via)
95+
96+
demandDataSince2022 <- demandData_all %>% filter(date >= as.Date(ymd("2022-01-01")))
97+
98+
write.csv2(demandData_all,"C:/Users/Simon/Documents/shared-svn/projects/KelRide/data/badWeather/data/allDemandByDate.csv", quote = FALSE, row.names=FALSE)
99+
write.csv2(demandDataSince2022,"C:/Users/Simon/Documents/shared-svn/projects/KelRide/data/badWeather/data/allDemandByDateSince2022.csv", quote = FALSE, row.names=FALSE)
100+
write.csv2(requests_all,"C:/Users/Simon/Documents/shared-svn/projects/KelRide/data/badWeather/data/allRequestsByDate.csv", quote = FALSE, row.names=FALSE)

0 commit comments

Comments
 (0)