From ef1c658343328e54420b9eb36cf05b438a8f87d9 Mon Sep 17 00:00:00 2001 From: tiffanychu90 Date: Thu, 15 Feb 2024 19:24:31 +0000 Subject: [PATCH 01/15] feb for hqta, traffic_ops, gtfs_funnel, consolidate hqta logs --- _shared_utils/shared_utils/rt_dates.py | 8 ++- gtfs_funnel/download_vehicle_positions.py | 2 + gtfs_funnel/logs/download_data.log | 16 ++++++ gtfs_funnel/logs/download_vp_v2.log | 11 ++++ gtfs_funnel/logs/vp_preprocessing.log | 8 ++- gtfs_funnel/update_vars.py | 2 +- .../A1_download_rail_ferry_brt_stops.py | 5 +- .../A2_combine_stops.py | 9 ++-- .../B1_create_hqta_segments.py | 10 ++-- .../B2_sjoin_stops_to_segments.py | 6 +-- .../C1_prep_pairwise_intersections.py | 6 +-- .../C2_get_intersections.py | 6 +-- .../C3_create_bus_hqta_types.py | 6 +-- .../D1_assemble_hqta_points.py | 6 +-- .../D2_assemble_hqta_polygons.py | 6 +-- .../logs/A2_combine_stops.log | 18 ------- .../logs/B1_create_hqta_segments.log | 12 ----- .../logs/B2_sjoin_stops_to_segments.log | 6 --- .../logs/C1_prep_pairwise_intersections.log | 12 ----- .../logs/C2_find_intersections.log | 12 ----- .../logs/C3_create_bus_hqta_types.log | 15 ------ .../logs/D1_assemble_hqta_points.log | 21 -------- .../logs/D2_assemble_hqta_polygons.log | 16 ------ .../logs/hqta_processing.log | 51 +++++++++++++++++++ .../logs/operators_for_hqta.log | 12 ----- .../operators_for_hqta.py | 6 +-- high_quality_transit_areas/update_vars.py | 2 +- .../valid_hqta_operators.json | 2 +- open_data/update_vars.py | 2 +- 29 files changed, 129 insertions(+), 165 deletions(-) delete mode 100644 high_quality_transit_areas/logs/A2_combine_stops.log delete mode 100644 high_quality_transit_areas/logs/B1_create_hqta_segments.log delete mode 100644 high_quality_transit_areas/logs/B2_sjoin_stops_to_segments.log delete mode 100644 high_quality_transit_areas/logs/C1_prep_pairwise_intersections.log delete mode 100644 high_quality_transit_areas/logs/C2_find_intersections.log delete mode 100644 high_quality_transit_areas/logs/C3_create_bus_hqta_types.log delete mode 100644 high_quality_transit_areas/logs/D1_assemble_hqta_points.log delete mode 100644 high_quality_transit_areas/logs/D2_assemble_hqta_polygons.log create mode 100644 high_quality_transit_areas/logs/hqta_processing.log delete mode 100644 high_quality_transit_areas/logs/operators_for_hqta.log diff --git a/_shared_utils/shared_utils/rt_dates.py b/_shared_utils/shared_utils/rt_dates.py index c9f8501bd..f2c572a03 100644 --- a/_shared_utils/shared_utils/rt_dates.py +++ b/_shared_utils/shared_utils/rt_dates.py @@ -48,10 +48,14 @@ "nov2023": "2023-11-15", "dec2023": "2023-12-13", "jan2024": "2024-01-17", + "feb2024": "2024-02-14", } -y2023_dates = [DATES[f"{m}2023"] for m in ["dec", "nov", "oct", "sep", "aug", "jul", "jun", "may", "apr", "mar"]] -y2024_dates = [v for k, v in DATES.items() if "2024" in k] +y2023_dates = [ + v for k, v in DATES.items() if k.endswith("2023") and not any(substring in k for substring in ["jan", "feb"]) +] + +y2024_dates = [v for k, v in DATES.items() if k.endswith("2024")] apr_week = [v for k, v in DATES.items() if "apr2023" in k] oct_week = [v for k, v in DATES.items() if "oct2023" in k] diff --git a/gtfs_funnel/download_vehicle_positions.py b/gtfs_funnel/download_vehicle_positions.py index 4fc4afe6c..d15d01d92 100644 --- a/gtfs_funnel/download_vehicle_positions.py +++ b/gtfs_funnel/download_vehicle_positions.py @@ -105,6 +105,8 @@ def loop_through_batches_and_download_vp( df.to_parquet( f"{SEGMENT_GCS}vp_raw_{analysis_date}_batch{i}.parquet") + del df + time1 = datetime.datetime.now() logger.info(f"exported batch {i} to GCS: {time1 - time0}") diff --git a/gtfs_funnel/logs/download_data.log b/gtfs_funnel/logs/download_data.log index 3559fef6f..9a49e16df 100644 --- a/gtfs_funnel/logs/download_data.log +++ b/gtfs_funnel/logs/download_data.log @@ -270,3 +270,19 @@ 2024-01-18 09:14:47.261 | INFO | __main__:download_one_day:29 - # operators to run: 169 2024-01-18 09:14:47.261 | INFO | __main__:download_one_day:33 - *********** Download st data *********** 2024-01-18 09:15:55.924 | INFO | __main__:download_one_day:56 - execution time: 0:01:10.033714 +2024-02-15 09:20:58.545 | INFO | __main__:download_one_day:46 - Analysis date: 2024-02-14 +2024-02-15 09:21:01.201 | INFO | __main__:download_one_day:53 - # operators to run: 202 +2024-02-15 09:21:01.202 | INFO | __main__:download_one_day:56 - *********** Download trips data *********** +2024-02-15 09:21:23.365 | INFO | __main__:download_one_day:86 - execution time: 0:00:24.802016 +2024-02-15 09:21:37.056 | INFO | __main__:download_one_day:23 - Analysis date: 2024-02-14 +2024-02-15 09:21:39.062 | INFO | __main__:download_one_day:30 - # operators to run: 202 +2024-02-15 09:21:39.062 | INFO | __main__:download_one_day:33 - *********** Download stops data *********** +2024-02-15 09:21:47.027 | INFO | __main__:download_one_day:64 - execution time: 0:00:09.969948 +2024-02-15 09:22:00.563 | INFO | __main__:download_one_day:22 - Analysis date: 2024-02-14 +2024-02-15 09:22:02.703 | INFO | __main__:download_one_day:29 - # operators to run: 202 +2024-02-15 09:22:02.704 | INFO | __main__:download_one_day:33 - *********** Download routelines data *********** +2024-02-15 09:23:28.505 | INFO | __main__:download_one_day:63 - execution time: 0:01:27.941276 +2024-02-15 09:23:45.261 | INFO | __main__:download_one_day:21 - Analysis date: 2024-02-14 +2024-02-15 09:23:46.825 | INFO | __main__:download_one_day:29 - # operators to run: 169 +2024-02-15 09:23:46.826 | INFO | __main__:download_one_day:33 - *********** Download st data *********** +2024-02-15 09:25:01.209 | INFO | __main__:download_one_day:56 - execution time: 0:01:15.946993 diff --git a/gtfs_funnel/logs/download_vp_v2.log b/gtfs_funnel/logs/download_vp_v2.log index 0fba3bae8..cf8af9340 100644 --- a/gtfs_funnel/logs/download_vp_v2.log +++ b/gtfs_funnel/logs/download_vp_v2.log @@ -174,3 +174,14 @@ 2024-01-18 09:25:33.713 | INFO | __main__::110 - export concatenated vp: 0:02:07.041294 2024-01-18 09:28:08.669 | INFO | __main__::132 - remove batched parquets 2024-01-18 09:28:08.670 | INFO | __main__::135 - execution time: 0:04:48.117366 +2024-02-15 09:25:16.954 | INFO | __main__::146 - Analysis date: 2024-02-14 +2024-02-15 09:26:49.716 | INFO | __main__:loop_through_batches_and_download_vp:109 - exported batch 0 to GCS: 0:01:32.752392 +2024-02-15 09:27:37.016 | INFO | __main__:loop_through_batches_and_download_vp:109 - exported batch 1 to GCS: 0:00:47.299499 +2024-02-15 09:30:29.353 | INFO | __main__:loop_through_batches_and_download_vp:109 - exported batch 2 to GCS: 0:02:52.335775 +2024-02-15 09:31:56.048 | INFO | __main__:loop_through_batches_and_download_vp:109 - exported batch 3 to GCS: 0:01:26.673852 +2024-02-15 09:31:57.359 | INFO | __main__::153 - execution time: 0:06:40.395352 +2024-02-15 09:32:26.114 | INFO | __main__::95 - Analysis date: 2024-02-14 +2024-02-15 09:32:31.685 | INFO | __main__::103 - concat and filter batched data: 0:00:05.570464 +2024-02-15 09:34:43.337 | INFO | __main__::110 - export concatenated vp: 0:02:11.652166 +2024-02-15 09:37:09.512 | INFO | __main__::132 - remove batched parquets +2024-02-15 09:37:09.513 | INFO | __main__::135 - execution time: 0:04:43.398413 diff --git a/gtfs_funnel/logs/vp_preprocessing.log b/gtfs_funnel/logs/vp_preprocessing.log index ff5561883..935f1453f 100644 --- a/gtfs_funnel/logs/vp_preprocessing.log +++ b/gtfs_funnel/logs/vp_preprocessing.log @@ -3,4 +3,10 @@ 2024-01-27 14:27:17.221 | INFO | __main__::136 - 2023-11-15: condense vp for trip-direction 0:07:23.319808 2024-01-27 14:39:49.578 | INFO | __main__::144 - 2023-11-15: prepare vp to use in nearest neighbor: 0:12:32.357147 2024-01-27 14:46:57.364 | INFO | __main__::136 - 2023-10-11: condense vp for trip-direction 0:07:07.785109 -2024-01-27 14:58:58.072 | INFO | __main__::144 - 2023-10-11: prepare vp to use in nearest neighbor: 0:12:00.707961 \ No newline at end of file +2024-01-27 14:58:58.072 | INFO | __main__::144 - 2023-10-11: prepare vp to use in nearest neighbor: 0:12:00.7079612024-02-15 09:41:33.748 | INFO | __main__::169 - 2024-02-14: pare down vp: 0:01:27.651510 +2024-02-15 09:44:30.781 | INFO | __main__:attach_prior_vp_add_direction:89 - persist vp gddf: 0:02:42.188876 +2024-02-15 09:47:04.578 | INFO | __main__:attach_prior_vp_add_direction:121 - np vectorize arrays for direction: 0:02:33.796804 +2024-02-15 09:47:10.531 | INFO | __main__::193 - 2024-02-14: export vp direction: 0:05:21.938881 +2024-02-15 09:48:06.074 | INFO | __main__::199 - 2024-02-14: export usable vp with direction: 0:00:55.543053 +2024-02-15 09:48:06.075 | INFO | __main__::202 - 2024-02-14: vp_direction script execution time: 0:06:17.481934 +2024-02-15 10:01:29.162 | INFO | __main__::142 - 2024-02-14: condense vp for trip-direction 0:13:09.224619 diff --git a/gtfs_funnel/update_vars.py b/gtfs_funnel/update_vars.py index b651660ea..07a14fb20 100644 --- a/gtfs_funnel/update_vars.py +++ b/gtfs_funnel/update_vars.py @@ -6,7 +6,7 @@ rt_dates.oct_week + rt_dates.apr_week) analysis_date_list = [ - rt_dates.DATES["jan2024"] + rt_dates.DATES["feb2024"] ] CONFIG_PATH = Path("config.yml") diff --git a/high_quality_transit_areas/A1_download_rail_ferry_brt_stops.py b/high_quality_transit_areas/A1_download_rail_ferry_brt_stops.py index b26c53850..3caa178bc 100644 --- a/high_quality_transit_areas/A1_download_rail_ferry_brt_stops.py +++ b/high_quality_transit_areas/A1_download_rail_ferry_brt_stops.py @@ -23,7 +23,7 @@ def filter_trips_to_route_type(analysis_date: str, trips = helpers.import_scheduled_trips( analysis_date, columns = ["feed_key", "name", "trip_id", - "route_id", "route_type"], + "route_id", "route_type", "route_desc"], ) if isinstance(route_types, list): @@ -33,6 +33,7 @@ def filter_trips_to_route_type(analysis_date: str, trips_subset = filter_to_brt_trips(trips) trips_subset = (trips_subset + .drop(columns = "route_desc") .drop_duplicates() .reset_index(drop=True) ) @@ -52,7 +53,7 @@ def filter_to_brt_trips(trips: pd.DataFrame) -> pd.DataFrame: ["METRO SILVER LINE", "METRO ORANGE LINE", "METRO J LINE", "METRO G LINE" ]}, - "Bay Area 511 Muni Schedule": {"route_short_name": + "Bay Area 511 Muni Schedule": {"route_id": ['49']}, # Omni BRT -- too infrequent! #"OmniTrans Schedule": {"route_short_name": ["sbX"]} diff --git a/high_quality_transit_areas/A2_combine_stops.py b/high_quality_transit_areas/A2_combine_stops.py index 999be7ed9..bb004bf80 100644 --- a/high_quality_transit_areas/A2_combine_stops.py +++ b/high_quality_transit_areas/A2_combine_stops.py @@ -54,12 +54,12 @@ #client = Client("dask-scheduler.dask.svc.cluster.local:8786") - logger.add("./logs/A2_combine_stops.log", retention="3 months") + logger.add("./logs/hqta_processing.log", retention="3 months") logger.add(sys.stderr, format="{time:YYYY-MM-DD at HH:mm:ss} | {level} | {message}", level="INFO") - logger.info(f"Analysis date: {analysis_date}") + logger.info(f"A2_combine_stops Analysis Date: {analysis_date}") start = datetime.datetime.now() # Rail @@ -99,9 +99,6 @@ ferry_stops ], axis=0, ignore_index=True) - logger.info("concatenated datasets") - - # Export to GCS utils.geoparquet_gcs_export( rail_brt_ferry, @@ -110,6 +107,6 @@ ) end = datetime.datetime.now() - logger.info(f"execution time: {end-start}") + logger.info(f"A2_combine_stops execution time: {end-start}") #client.close() \ No newline at end of file diff --git a/high_quality_transit_areas/B1_create_hqta_segments.py b/high_quality_transit_areas/B1_create_hqta_segments.py index ee07c2bcc..c0a698860 100644 --- a/high_quality_transit_areas/B1_create_hqta_segments.py +++ b/high_quality_transit_areas/B1_create_hqta_segments.py @@ -28,7 +28,7 @@ import operators_for_hqta from calitp_data_analysis import geography_utils, utils -from shared_utils import rt_utils, geog_utils_to_add +from shared_utils import rt_utils from segment_speed_utils import helpers, gtfs_schedule_wrangling from utilities import GCS_FILE_PATH from update_vars import analysis_date @@ -188,7 +188,7 @@ def select_shapes_and_segment( axis=1, ) - segmented = geog_utils_to_add.explode_segments( + segmented = geography_utils.explode_segments( ready_for_segmenting, group_cols = ["route_key"], segment_col = "segment_geometry" @@ -273,12 +273,12 @@ def find_primary_direction_across_hqta_segments( if __name__=="__main__": - logger.add("./logs/B1_create_hqta_segments.log", retention="3 months") + logger.add("./logs/hqta_processing.log", retention="3 months") logger.add(sys.stderr, format="{time:YYYY-MM-DD at HH:mm:ss} | {level} | {message}", level="INFO") - logger.info(f"Analysis date: {analysis_date}") + logger.info(f"B1_create_hqta_segments Analysis date: {analysis_date}") start = dt.datetime.now() @@ -319,4 +319,4 @@ def find_primary_direction_across_hqta_segments( logger.info(f"cut segments: {time2 - time1}") end = dt.datetime.now() - logger.info(f"total execution time: {end - start}") \ No newline at end of file + logger.info(f"B1_create_hqta_segments execution time: {end - start}") \ No newline at end of file diff --git a/high_quality_transit_areas/B2_sjoin_stops_to_segments.py b/high_quality_transit_areas/B2_sjoin_stops_to_segments.py index 506621276..1115ee586 100644 --- a/high_quality_transit_areas/B2_sjoin_stops_to_segments.py +++ b/high_quality_transit_areas/B2_sjoin_stops_to_segments.py @@ -210,12 +210,12 @@ def sjoin_stops_and_stop_times_to_hqta_segments( #from dask.distributed import Client #client = Client("dask-scheduler.dask.svc.cluster.local:8786") - logger.add("./logs/B2_sjoin_stops_to_segments.log", retention="3 months") + logger.add("./logs/hqta_processing.log", retention="3 months") logger.add(sys.stderr, format="{time:YYYY-MM-DD at HH:mm:ss} | {level} | {message}", level="INFO") - logger.info(f"Analysis date: {analysis_date}") + logger.info(f"B2_sjoin_stops_to_segments Analysis date: {analysis_date}") start = dt.datetime.now() @@ -255,6 +255,6 @@ def sjoin_stops_and_stop_times_to_hqta_segments( ) end = dt.datetime.now() - logger.info(f"Execution time: {end-start}") + logger.info(f"B2_sjoin_stops_to_segments execution time: {end-start}") #client.close() diff --git a/high_quality_transit_areas/C1_prep_pairwise_intersections.py b/high_quality_transit_areas/C1_prep_pairwise_intersections.py index b008ea693..c76719025 100644 --- a/high_quality_transit_areas/C1_prep_pairwise_intersections.py +++ b/high_quality_transit_areas/C1_prep_pairwise_intersections.py @@ -82,12 +82,12 @@ def sjoin_against_other_operators( #from dask.distributed import Client #client = Client("dask-scheduler.dask.svc.cluster.local:8786") - logger.add("./logs/C1_prep_pairwise_intersections.log", retention = "3 months") + logger.add("./logs/hqta_processing.log", retention = "3 months") logger.add(sys.stderr, format="{time:YYYY-MM-DD at HH:mm:ss} | {level} | {message}", level="INFO") - logger.info(f"Analysis date: {analysis_date}") + logger.info(f"C1_prep_pairwise_intersections Analysis date: {analysis_date}") start = dt.datetime.now() corridors = prep_bus_corridors() @@ -145,6 +145,6 @@ def sjoin_against_other_operators( ) end = dt.datetime.now() - logger.info(f"execution time: {end-start}") + logger.info(f"C1_prep_pairwise_intersections execution time: {end-start}") #client.close() \ No newline at end of file diff --git a/high_quality_transit_areas/C2_get_intersections.py b/high_quality_transit_areas/C2_get_intersections.py index 9bf66d4a8..cdfa23c68 100644 --- a/high_quality_transit_areas/C2_get_intersections.py +++ b/high_quality_transit_areas/C2_get_intersections.py @@ -101,12 +101,12 @@ def find_intersections(pairs_table: gpd.GeoDataFrame) -> gpd.GeoDataFrame: #from dask.distributed import Client #client = Client("dask-scheduler.dask.svc.cluster.local:8786") - logger.add("./logs/C2_find_intersections.log", retention = "3 months") + logger.add("./logs/hqta_processing.log", retention = "3 months") logger.add(sys.stderr, format="{time:YYYY-MM-DD at HH:mm:ss} | {level} | {message}", level="INFO") - logger.info(f"Analysis date: {analysis_date}") + logger.info(f"C2_find_intersections Analysis date: {analysis_date}") start = dt.datetime.now() @@ -130,6 +130,6 @@ def find_intersections(pairs_table: gpd.GeoDataFrame) -> gpd.GeoDataFrame: ) end = dt.datetime.now() - logger.info(f"execution time: {end-start}") + logger.info(f"C2_find_intersections execution time: {end-start}") #client.close() \ No newline at end of file diff --git a/high_quality_transit_areas/C3_create_bus_hqta_types.py b/high_quality_transit_areas/C3_create_bus_hqta_types.py index febb7b00d..d78dc8462 100644 --- a/high_quality_transit_areas/C3_create_bus_hqta_types.py +++ b/high_quality_transit_areas/C3_create_bus_hqta_types.py @@ -119,12 +119,12 @@ def create_stops_along_corridors(all_stops: gpd.GeoDataFrame) -> gpd.GeoDataFram #from dask.distributed import Client #client = Client("dask-scheduler.dask.svc.cluster.local:8786") - logger.add("./logs/C3_create_bus_hqta_types.log", retention="3 months") + logger.add("./logs/hqta_processing.log", retention="3 months") logger.add(sys.stderr, format="{time:YYYY-MM-DD at HH:mm:ss} | {level} | {message}", level="INFO") - logger.info(f"Analysis date: {analysis_date}") + logger.info(f"C3_create_bus_hqta_types Analysis date: {analysis_date}") start = dt.datetime.now() # Start with the gdf of all the hqta_segments @@ -162,6 +162,6 @@ def create_stops_along_corridors(all_stops: gpd.GeoDataFrame) -> gpd.GeoDataFram ) end = dt.datetime.now() - logger.info(f"execution time: {end-start}") + logger.info(f"C3_create_bus_hqta_types execution time: {end-start}") #client.close() \ No newline at end of file diff --git a/high_quality_transit_areas/D1_assemble_hqta_points.py b/high_quality_transit_areas/D1_assemble_hqta_points.py index 5d7ae4cfd..9d240534f 100644 --- a/high_quality_transit_areas/D1_assemble_hqta_points.py +++ b/high_quality_transit_areas/D1_assemble_hqta_points.py @@ -201,12 +201,12 @@ def final_processing(gdf: gpd.GeoDataFrame) -> gpd.GeoDataFrame: if __name__=="__main__": - logger.add("./logs/D1_assemble_hqta_points.log", retention="3 months") + logger.add("./logs/hqta_processing.log", retention="3 months") logger.add(sys.stderr, format="{time:YYYY-MM-DD at HH:mm:ss} | {level} | {message}", level="INFO") - logger.info(f"Analysis date: {analysis_date}") + logger.info(f"D1_assemble_hqta_points Analysis date: {analysis_date}") start = dt.datetime.now() rail_ferry_brt = rail_ferry_brt_extract.get_rail_ferry_brt_extract().to_crs( @@ -267,4 +267,4 @@ def final_processing(gdf: gpd.GeoDataFrame) -> gpd.GeoDataFrame: logger.info("export as geoparquet") end = dt.datetime.now() - logger.info(f"execution time: {end-start}") \ No newline at end of file + logger.info(f"D1_assemble_hqta_points execution time: {end-start}") \ No newline at end of file diff --git a/high_quality_transit_areas/D2_assemble_hqta_polygons.py b/high_quality_transit_areas/D2_assemble_hqta_polygons.py index 7f01666a8..5a4539b26 100644 --- a/high_quality_transit_areas/D2_assemble_hqta_polygons.py +++ b/high_quality_transit_areas/D2_assemble_hqta_polygons.py @@ -127,12 +127,12 @@ def final_processing(gdf: gpd.GeoDataFrame) -> gpd.GeoDataFrame: if __name__=="__main__": - logger.add("./logs/D2_assemble_hqta_polygons.log", retention="3 months") + logger.add("./logs/hqta_processing.log", retention="3 months") logger.add(sys.stderr, format="{time:YYYY-MM-DD at HH:mm:ss} | {level} | {message}", level="INFO") - logger.info(f"Analysis date: {analysis_date}") + logger.info(f"D2_assemble_hqta_polygons Analysis date: {analysis_date}") start = dt.datetime.now() hqta_points = catalog.hqta_points.read().to_crs(PROJECT_CRS) @@ -168,4 +168,4 @@ def final_processing(gdf: gpd.GeoDataFrame) -> gpd.GeoDataFrame: logger.info("export as geoparquet") end = dt.datetime.now() - logger.info(f"execution time: {end-start}") \ No newline at end of file + logger.info(f"D2_assemble_hqta_polygons execution time: {end-start}") \ No newline at end of file diff --git a/high_quality_transit_areas/logs/A2_combine_stops.log b/high_quality_transit_areas/logs/A2_combine_stops.log deleted file mode 100644 index 4c684b6b7..000000000 --- a/high_quality_transit_areas/logs/A2_combine_stops.log +++ /dev/null @@ -1,18 +0,0 @@ -2023-11-16 09:12:04.029 | INFO | __main__::62 - Analysis date: 2023-11-15 -2023-11-16 09:12:14.463 | INFO | __main__::70 - grabbed rail: 0:00:10.394794 -2023-11-16 09:12:23.893 | INFO | __main__::79 - grabbed brt: 0:00:09.429984 -2023-11-16 09:12:34.655 | INFO | __main__::86 - grabbed ferry: 0:00:10.762521 -2023-11-16 09:12:37.548 | INFO | __main__::102 - concatenated datasets -2023-11-16 09:12:37.784 | INFO | __main__::113 - execution time: 0:00:33.716302 -2023-12-14 09:35:54.946 | INFO | __main__::62 - Analysis date: 2023-12-13 -2023-12-14 09:36:06.859 | INFO | __main__::70 - grabbed rail: 0:00:11.884315 -2023-12-14 09:36:19.097 | INFO | __main__::79 - grabbed brt: 0:00:12.238391 -2023-12-14 09:36:30.851 | INFO | __main__::86 - grabbed ferry: 0:00:11.753123 -2023-12-14 09:36:33.691 | INFO | __main__::102 - concatenated datasets -2023-12-14 09:36:33.911 | INFO | __main__::113 - execution time: 0:00:38.935897 -2024-01-18 09:58:24.526 | INFO | __main__::62 - Analysis date: 2024-01-17 -2024-01-18 09:58:34.242 | INFO | __main__::70 - grabbed rail: 0:00:09.696271 -2024-01-18 09:58:44.295 | INFO | __main__::79 - grabbed brt: 0:00:10.053002 -2024-01-18 09:58:52.667 | INFO | __main__::86 - grabbed ferry: 0:00:08.372523 -2024-01-18 09:58:55.391 | INFO | __main__::102 - concatenated datasets -2024-01-18 09:58:55.639 | INFO | __main__::113 - execution time: 0:00:31.093727 diff --git a/high_quality_transit_areas/logs/B1_create_hqta_segments.log b/high_quality_transit_areas/logs/B1_create_hqta_segments.log deleted file mode 100644 index 88046c7da..000000000 --- a/high_quality_transit_areas/logs/B1_create_hqta_segments.log +++ /dev/null @@ -1,12 +0,0 @@ -2023-11-16 09:12:55.591 | INFO | __main__::285 - Analysis date: 2023-11-15 -2023-11-16 09:13:04.502 | INFO | __main__::302 - merge routes to trips: 0:00:08.895632 -2023-11-16 09:17:22.521 | INFO | __main__::321 - cut segments: 0:04:18.018810 -2023-11-16 09:17:22.522 | INFO | __main__::324 - total execution time: 0:04:26.915290 -2023-12-14 10:08:38.661 | INFO | __main__::283 - Analysis date: 2023-12-13 -2023-12-14 10:08:44.979 | INFO | __main__::300 - merge routes to trips: 0:00:06.316979 -2023-12-14 10:13:20.976 | INFO | __main__::321 - cut segments: 0:04:35.996986 -2023-12-14 10:13:20.977 | INFO | __main__::324 - total execution time: 0:04:42.315076 -2024-01-18 09:59:08.541 | INFO | __main__::281 - Analysis date: 2024-01-17 -2024-01-18 09:59:13.575 | INFO | __main__::298 - merge routes to trips: 0:00:04.987542 -2024-01-18 10:02:53.782 | INFO | __main__::319 - cut segments: 0:03:40.206635 -2024-01-18 10:02:53.782 | INFO | __main__::322 - total execution time: 0:03:45.194697 diff --git a/high_quality_transit_areas/logs/B2_sjoin_stops_to_segments.log b/high_quality_transit_areas/logs/B2_sjoin_stops_to_segments.log deleted file mode 100644 index a0e75ee7d..000000000 --- a/high_quality_transit_areas/logs/B2_sjoin_stops_to_segments.log +++ /dev/null @@ -1,6 +0,0 @@ -2023-11-16 09:21:06.274 | INFO | __main__::222 - Analysis date: 2023-11-15 -2023-11-16 09:21:58.902 | INFO | __main__::261 - Execution time: 0:00:52.626940 -2023-12-14 10:14:11.102 | INFO | __main__::219 - Analysis date: 2023-12-13 -2023-12-14 10:14:57.210 | INFO | __main__::258 - Execution time: 0:00:46.106794 -2024-01-18 10:03:07.367 | INFO | __main__::219 - Analysis date: 2024-01-17 -2024-01-18 10:03:43.325 | INFO | __main__::258 - Execution time: 0:00:35.921890 diff --git a/high_quality_transit_areas/logs/C1_prep_pairwise_intersections.log b/high_quality_transit_areas/logs/C1_prep_pairwise_intersections.log deleted file mode 100644 index 291605834..000000000 --- a/high_quality_transit_areas/logs/C1_prep_pairwise_intersections.log +++ /dev/null @@ -1,12 +0,0 @@ -2023-11-16 09:23:55.300 | INFO | __main__::127 - Analysis date: 2023-11-15 -2023-11-16 09:23:56.741 | INFO | __main__::136 - get pairwise table: 0:00:01.400203 -2023-11-16 09:24:01.574 | INFO | __main__::160 - compute for pairwise/subset_corridors: 0:00:04.833240 -2023-11-16 09:24:02.965 | INFO | __main__::171 - execution time: 0:00:07.624411 -2023-12-14 10:43:56.242 | INFO | __main__::129 - Analysis date: 2023-12-13 -2023-12-14 10:44:05.846 | INFO | __main__::146 - get pairwise table: 0:00:09.604118 -2023-12-14 10:44:06.184 | INFO | __main__::169 - compute for pairwise/subset_corridors: 0:00:00.337070 -2023-12-14 10:44:08.442 | INFO | __main__::181 - execution time: 0:00:12.199743 -2024-01-18 10:03:57.160 | INFO | __main__::90 - Analysis date: 2024-01-17 -2024-01-18 10:04:01.395 | INFO | __main__::113 - get pairwise table: 0:00:04.232979 -2024-01-18 10:04:01.821 | INFO | __main__::136 - compute for pairwise/subset_corridors: 0:00:00.425803 -2024-01-18 10:04:03.627 | INFO | __main__::148 - execution time: 0:00:06.465340 diff --git a/high_quality_transit_areas/logs/C2_find_intersections.log b/high_quality_transit_areas/logs/C2_find_intersections.log deleted file mode 100644 index 273409460..000000000 --- a/high_quality_transit_areas/logs/C2_find_intersections.log +++ /dev/null @@ -1,12 +0,0 @@ -2023-11-16 09:24:21.052 | INFO | __main__::109 - Analysis date: 2023-11-15 -2023-11-16 09:24:24.182 | INFO | __main__::119 - attach geometry to pairwise table: 0:00:03.116253 -2023-11-16 09:24:29.962 | INFO | __main__::124 - find intersections: 0:00:05.779966 -2023-11-16 09:24:31.893 | INFO | __main__::133 - execution time: 0:00:10.827747 -2023-12-14 10:17:02.744 | INFO | __main__::109 - Analysis date: 2023-12-13 -2023-12-14 10:17:06.880 | INFO | __main__::119 - attach geometry to pairwise table: 0:00:04.082272 -2023-12-14 10:17:24.571 | INFO | __main__::124 - find intersections: 0:00:17.691495 -2023-12-14 10:17:28.030 | INFO | __main__::133 - execution time: 0:00:25.231894 -2024-01-18 10:04:16.701 | INFO | __main__::109 - Analysis date: 2024-01-17 -2024-01-18 10:04:19.984 | INFO | __main__::119 - attach geometry to pairwise table: 0:00:03.232511 -2024-01-18 10:04:35.528 | INFO | __main__::124 - find intersections: 0:00:15.544019 -2024-01-18 10:04:38.796 | INFO | __main__::133 - execution time: 0:00:22.044455 diff --git a/high_quality_transit_areas/logs/C3_create_bus_hqta_types.log b/high_quality_transit_areas/logs/C3_create_bus_hqta_types.log deleted file mode 100644 index 620b3e934..000000000 --- a/high_quality_transit_areas/logs/C3_create_bus_hqta_types.log +++ /dev/null @@ -1,15 +0,0 @@ -2023-11-16 09:24:49.245 | INFO | __main__::126 - Analysis date: 2023-11-15 -2023-11-16 09:24:56.539 | INFO | __main__::136 - grab all stops -2023-11-16 09:24:56.639 | INFO | __main__::140 - create major stop bus -2023-11-16 09:24:59.957 | INFO | __main__::144 - create hq corridor bus -2023-11-16 09:25:00.637 | INFO | __main__::160 - execution time: 0:00:11.304229 -2023-12-14 10:20:37.223 | INFO | __main__::127 - Analysis date: 2023-12-13 -2023-12-14 10:20:57.783 | INFO | __main__::141 - grab all stops -2023-12-14 10:21:01.558 | INFO | __main__::145 - create major stop bus -2023-12-14 10:21:08.062 | INFO | __main__::149 - create hq corridor bus -2023-12-14 10:21:09.112 | INFO | __main__::165 - execution time: 0:00:31.888009 -2024-01-18 10:06:16.612 | INFO | __main__::127 - Analysis date: 2024-01-17 -2024-01-18 10:06:30.683 | INFO | __main__::141 - grab all stops -2024-01-18 10:06:33.691 | INFO | __main__::145 - create major stop bus -2024-01-18 10:06:37.507 | INFO | __main__::149 - create hq corridor bus -2024-01-18 10:06:38.463 | INFO | __main__::165 - execution time: 0:00:21.850209 diff --git a/high_quality_transit_areas/logs/D1_assemble_hqta_points.log b/high_quality_transit_areas/logs/D1_assemble_hqta_points.log deleted file mode 100644 index 0960b8a23..000000000 --- a/high_quality_transit_areas/logs/D1_assemble_hqta_points.log +++ /dev/null @@ -1,21 +0,0 @@ -2023-11-16 09:25:18.203 | INFO | __main__::204 - Analysis date: 2023-11-15 -2023-11-16 09:25:21.935 | INFO | __main__::228 - combined points: 0:00:03.710776 -2023-11-16 09:25:30.009 | INFO | __main__::234 - add route info: 0:00:08.074760 -2023-11-16 09:25:37.501 | INFO | __main__::242 - add agency names: 0:00:07.492050 -2023-11-16 09:25:37.883 | INFO | __main__::252 - export as geoparquet in date folder -2023-11-16 09:25:38.046 | INFO | __main__::261 - export as geoparquet -2023-11-16 09:25:38.048 | INFO | __main__::264 - execution time: 0:00:19.824551 -2023-12-14 10:26:15.076 | INFO | __main__::208 - Analysis date: 2023-12-13 -2023-12-14 10:26:21.487 | INFO | __main__::233 - combined points: 0:00:06.410131 -2023-12-14 10:26:35.452 | INFO | __main__::239 - add route info: 0:00:13.965701 -2023-12-14 10:26:45.190 | INFO | __main__::247 - add agency names: 0:00:09.737943 -2023-12-14 10:26:46.192 | INFO | __main__::257 - export as geoparquet in date folder -2023-12-14 10:26:46.783 | INFO | __main__::266 - export as geoparquet -2023-12-14 10:26:46.783 | INFO | __main__::269 - execution time: 0:00:31.706894 -2024-01-18 10:07:51.262 | INFO | __main__::208 - Analysis date: 2024-01-17 -2024-01-18 10:07:56.698 | INFO | __main__::233 - combined points: 0:00:05.373480 -2024-01-18 10:08:08.129 | INFO | __main__::239 - add route info: 0:00:11.430715 -2024-01-18 10:08:17.929 | INFO | __main__::247 - add agency names: 0:00:09.800166 -2024-01-18 10:08:18.739 | INFO | __main__::257 - export as geoparquet in date folder -2024-01-18 10:08:19.260 | INFO | __main__::266 - export as geoparquet -2024-01-18 10:08:19.260 | INFO | __main__::269 - execution time: 0:00:27.935665 diff --git a/high_quality_transit_areas/logs/D2_assemble_hqta_polygons.log b/high_quality_transit_areas/logs/D2_assemble_hqta_polygons.log deleted file mode 100644 index ffeb6e55a..000000000 --- a/high_quality_transit_areas/logs/D2_assemble_hqta_polygons.log +++ /dev/null @@ -1,16 +0,0 @@ -2023-11-16 09:25:57.825 | INFO | __main__::144 - Analysis date: 2023-11-15 -2023-11-16 09:26:15.876 | INFO | __main__::155 - filter and buffer: 0:00:18.027566 -2023-11-16 09:26:17.123 | INFO | __main__::168 - export as geoparquet in date folder -2023-11-16 09:26:17.866 | INFO | __main__::177 - export as geoparquet -2023-11-16 09:26:17.867 | INFO | __main__::180 - execution time: 0:00:20.019029 -2023-12-14 10:29:28.741 | INFO | __main__::136 - Analysis date: 2023-12-13 -2023-12-14 10:33:10.264 | INFO | __main__::135 - Analysis date: 2023-12-13 -2023-12-14 10:33:38.110 | INFO | __main__::146 - filter and buffer: 0:00:27.845491 -2023-12-14 10:33:40.391 | INFO | __main__::159 - export as geoparquet in date folder -2023-12-14 10:33:41.851 | INFO | __main__::168 - export as geoparquet -2023-12-14 10:33:41.853 | INFO | __main__::171 - execution time: 0:00:31.588813 -2024-01-18 10:08:32.637 | INFO | __main__::135 - Analysis date: 2024-01-17 -2024-01-18 10:08:55.437 | INFO | __main__::146 - filter and buffer: 0:00:22.788275 -2024-01-18 10:08:57.364 | INFO | __main__::159 - export as geoparquet in date folder -2024-01-18 10:08:58.529 | INFO | __main__::168 - export as geoparquet -2024-01-18 10:08:58.529 | INFO | __main__::171 - execution time: 0:00:25.880307 diff --git a/high_quality_transit_areas/logs/hqta_processing.log b/high_quality_transit_areas/logs/hqta_processing.log new file mode 100644 index 000000000..3b87190ee --- /dev/null +++ b/high_quality_transit_areas/logs/hqta_processing.log @@ -0,0 +1,51 @@ +2024-02-15 10:39:37.404 | INFO | __main__::62 - Analysis date: 2024-02-14 +2024-02-15 10:39:53.615 | INFO | __main__::70 - grabbed rail: 0:00:16.209130 +2024-02-15 10:40:08.900 | INFO | __main__::79 - grabbed brt: 0:00:15.285392 +2024-02-15 10:40:23.528 | INFO | __main__::86 - grabbed ferry: 0:00:14.627469 +2024-02-15 10:40:27.034 | INFO | __main__::102 - concatenated datasets +2024-02-15 10:40:27.290 | INFO | __main__::113 - execution time: 0:00:49.884562 +2024-02-15 10:41:59.689 | INFO | __main__::281 - Analysis date: 2024-02-14 +2024-02-15 10:42:06.502 | INFO | __main__::298 - merge routes to trips: 0:00:06.811228 +2024-02-15 10:48:36.857 | INFO | __main__::319 - cut segments: 0:06:30.354741 +2024-02-15 10:48:36.858 | INFO | __main__::322 - total execution time: 0:06:37.166630 +2024-02-15 10:48:55.584 | INFO | __main__::218 - Analysis date: 2024-02-14 +2024-02-15 10:49:39.341 | INFO | __main__::258 - Execution time: 0:00:43.7553602024-02-15 11:12:10.529 | INFO | __main__::123 - operators_for_hqta Analysis date: 2024-02-14 +2024-02-15 11:12:11.884 | INFO | __main__::132 - get list of cached ITP IDs: 0:00:01.322261 +2024-02-15 11:12:13.731 | INFO | __main__::148 - check files for completeness, save as json: 0:00:01.846775 +2024-02-15 11:12:13.731 | INFO | __main__::151 - operators_for_hqta execution time: 0:00:03.169393 +2024-02-15 11:12:29.212 | INFO | __main__::62 - A2_combine_stops Analysis Date: 2024-02-14 +2024-02-15 11:12:42.921 | INFO | __main__::70 - grabbed rail: 0:00:13.707923 +2024-02-15 11:12:56.621 | INFO | __main__::79 - grabbed brt: 0:00:13.700660 +2024-02-15 11:13:08.412 | INFO | __main__::86 - grabbed ferry: 0:00:11.790357 +2024-02-15 11:13:11.728 | INFO | __main__::110 - A2_combine_stops execution time: 0:00:42.515868 +2024-02-15 11:13:25.690 | INFO | __main__::281 - B1_create_hqta_segments Analysis date: 2024-02-14 +2024-02-15 11:13:31.067 | INFO | __main__::298 - merge routes to trips: 0:00:05.376384 +2024-02-15 11:17:26.810 | INFO | __main__::319 - cut segments: 0:03:55.742468 +2024-02-15 11:17:26.810 | INFO | __main__::322 - B1_create_hqta_segments execution time: 0:04:01.119368 +2024-02-15 11:17:40.815 | INFO | __main__::218 - B2_sjoin_stops_to_segments Analysis date: 2024-02-14 +2024-02-15 11:18:13.209 | INFO | __main__::258 - B2_sjoin_stops_to_segments execution time: 0:00:32.393811 +2024-02-15 11:18:28.611 | INFO | __main__::90 - C1_prep_pairwise_intersections Analysis date: 2024-02-14 +2024-02-15 11:18:35.802 | INFO | __main__::113 - get pairwise table: 0:00:07.190876 +2024-02-15 11:18:36.183 | INFO | __main__::136 - compute for pairwise/subset_corridors: 0:00:00.381023 +2024-02-15 11:18:38.070 | INFO | __main__::148 - C1_prep_pairwise_intersections execution time: 0:00:09.459173 +2024-02-15 11:18:51.793 | INFO | __main__::109 - C2_find_intersections Analysis date: 2024-02-14 +2024-02-15 11:18:58.127 | INFO | __main__::119 - attach geometry to pairwise table: 0:00:06.332460 +2024-02-15 11:19:14.113 | INFO | __main__::124 - find intersections: 0:00:15.986460 +2024-02-15 11:19:17.140 | INFO | __main__::133 - C2_find_intersections execution time: 0:00:25.345916 +2024-02-15 11:19:30.961 | INFO | __main__::127 - C3_create_bus_hqta_types Analysis date: 2024-02-14 +2024-02-15 11:19:46.819 | INFO | __main__::141 - grab all stops +2024-02-15 11:19:49.936 | INFO | __main__::145 - create major stop bus +2024-02-15 11:19:53.686 | INFO | __main__::149 - create hq corridor bus +2024-02-15 11:19:54.723 | INFO | __main__::165 - C3_create_bus_hqta_types execution time: 0:00:23.759924 +2024-02-15 11:20:10.567 | INFO | __main__::209 - D1_assemble_hqta_points Analysis date: 2024-02-14 +2024-02-15 11:20:15.564 | INFO | __main__::234 - combined points: 0:00:04.997074 +2024-02-15 11:20:28.853 | INFO | __main__::240 - add route info: 0:00:13.288940 +2024-02-15 11:20:38.686 | INFO | __main__::248 - add agency names: 0:00:09.832929 +2024-02-15 11:20:39.357 | INFO | __main__::258 - export as geoparquet in date folder +2024-02-15 11:20:39.906 | INFO | __main__::267 - export as geoparquet +2024-02-15 11:20:39.907 | INFO | __main__::270 - D1_assemble_hqta_points execution time: 0:00:29.339672 +2024-02-15 11:20:53.679 | INFO | __main__::135 - D2_assemble_hqta_polygons Analysis date: 2024-02-14 +2024-02-15 11:21:20.489 | INFO | __main__::146 - filter and buffer: 0:00:26.810481 +2024-02-15 11:21:22.772 | INFO | __main__::159 - export as geoparquet in date folder +2024-02-15 11:21:24.051 | INFO | __main__::168 - export as geoparquet +2024-02-15 11:21:24.052 | INFO | __main__::171 - D2_assemble_hqta_polygons execution time: 0:00:30.373503 diff --git a/high_quality_transit_areas/logs/operators_for_hqta.log b/high_quality_transit_areas/logs/operators_for_hqta.log deleted file mode 100644 index 282969884..000000000 --- a/high_quality_transit_areas/logs/operators_for_hqta.log +++ /dev/null @@ -1,12 +0,0 @@ -2023-11-16 09:11:42.834 | INFO | __main__::123 - Analysis date: 2023-11-15 -2023-11-16 09:11:45.514 | INFO | __main__::132 - get list of cached ITP IDs: 0:00:02.655308 -2023-11-16 09:11:46.692 | INFO | __main__::148 - check files for completeness, save as json: 0:00:01.177435 -2023-11-16 09:11:46.692 | INFO | __main__::151 - execution time: 0:00:03.833200 -2023-12-14 09:35:32.946 | INFO | __main__::123 - Analysis date: 2023-12-13 -2023-12-14 09:35:35.757 | INFO | __main__::132 - get list of cached ITP IDs: 0:00:02.791287 -2023-12-14 09:35:37.905 | INFO | __main__::148 - check files for completeness, save as json: 0:00:02.148186 -2023-12-14 09:35:37.906 | INFO | __main__::151 - execution time: 0:00:04.940026 -2024-01-18 09:58:06.172 | INFO | __main__::123 - Analysis date: 2024-01-17 -2024-01-18 09:58:08.424 | INFO | __main__::132 - get list of cached ITP IDs: 0:00:02.234068 -2024-01-18 09:58:10.428 | INFO | __main__::148 - check files for completeness, save as json: 0:00:02.003955 -2024-01-18 09:58:10.428 | INFO | __main__::151 - execution time: 0:00:04.238378 diff --git a/high_quality_transit_areas/operators_for_hqta.py b/high_quality_transit_areas/operators_for_hqta.py index 29a083dae..91a9bed17 100644 --- a/high_quality_transit_areas/operators_for_hqta.py +++ b/high_quality_transit_areas/operators_for_hqta.py @@ -115,12 +115,12 @@ def check_for_completeness( if __name__=="__main__": - logger.add("./logs/operators_for_hqta.log", retention="3 months") + logger.add("./logs/hqta_processing.log", retention="3 months") logger.add(sys.stderr, format="{time:YYYY-MM-DD at HH:mm:ss} | {level} | {message}", level="INFO") - logger.info(f"Analysis date: {analysis_date}") + logger.info(f"operators_for_hqta Analysis date: {analysis_date}") start = dt.datetime.now() # These are all the IDs that have some cached files in GCS @@ -148,7 +148,7 @@ def check_for_completeness( logger.info(f"check files for completeness, save as json: {time2-time1}") end = dt.datetime.now() - logger.info(f"execution time: {end-start}") + logger.info(f"operators_for_hqta execution time: {end-start}") diff --git a/high_quality_transit_areas/update_vars.py b/high_quality_transit_areas/update_vars.py index d37d6b82f..3e8e02ac9 100644 --- a/high_quality_transit_areas/update_vars.py +++ b/high_quality_transit_areas/update_vars.py @@ -1,6 +1,6 @@ from shared_utils import rt_utils, rt_dates -analysis_date = rt_dates.DATES["jan2024"] +analysis_date = rt_dates.DATES["feb2024"] COMPILED_CACHED_VIEWS = f"{rt_utils.GCS_FILE_PATH}compiled_cached_views/" TEMP_GCS = f"{rt_utils.GCS_FILE_PATH}temp/" diff --git a/high_quality_transit_areas/valid_hqta_operators.json b/high_quality_transit_areas/valid_hqta_operators.json index 73b469bf8..e96deb5f8 100644 --- a/high_quality_transit_areas/valid_hqta_operators.json +++ b/high_quality_transit_areas/valid_hqta_operators.json @@ -1 +1 @@ -{"VALID_FEED_KEYS": {"Alhambra Schedule": "63cda8c6bbe285fdee43b0fc5db77cf8", "Amador Schedule": "4ce9825a6c3607c50c5192c90f768239", "Anaheim Resort Schedule": "b67d81e7df9f4caac2ba20286f01146c", "Antelope Valley Transit Authority Schedule": "e3412a6ad35e38ed650bc89aabefc8f9", "Arcadia Schedule": "5c01ed273e9f985d555cc2d02151fdb2", "Arvin Schedule": "7c0ba48c48f7ccd9b07a7c5d1151b4be", "Auburn Schedule": "6a5f537fa23a799706529745dbdbabaa", "Avalon Schedule": "18f7d4c859520bb5ccb2475d599fc2d8", "Baldwin Park Schedule": "0994a6114f881944475caafc3a8996eb", "Banning Pass Schedule": "b9a191f594d451d8b245884b61eec402", "Bay Area 511 AC Transit Schedule": "3ed66c11d38d2d3e5a610c6d1b34ec2a", "Bay Area 511 ACE Schedule": "597aee77f08e4799555e350a3cd5da2b", "Bay Area 511 BART Schedule": "f50113d666d27573c8b99721a7ec5d9d", "Bay Area 511 Caltrain Schedule": "2a9ce9d241f926b9c2b93b918e3fa51c", "Bay Area 511 Capitol Corridor Schedule": "e3c7393dfcc45fb6025e65d51398bd79", "Bay Area 511 Commute.org Schedule": "107b556632e4eebbbaa062dce316edc2", "Bay Area 511 County Connection Schedule": "2aa353e11dbf4ca87f156324bdcd11ab", "Bay Area 511 Dumbarton Express Schedule": "0a8c86da361241493a1dc2cf31bb6e0f", "Bay Area 511 Emery Go-Round Schedule": "35edcadbdeeb6bdd6a29a90677870d54", "Bay Area 511 Fairfield and Suisun Transit Schedule": "ad5caa91630ce8fe2d8bd7eca0657cc2", "Bay Area 511 Golden Gate Ferry Schedule": "1df9f9a60e2e12b638ffdef78f4b5e49", "Bay Area 511 Golden Gate Transit Schedule": "17519771aeb14e1874dd4015e87c62d5", "Bay Area 511 MVGO Schedule": "b6556289ed5faba35f5a6e17adf943c1", "Bay Area 511 Marin Schedule": "744ef5b993e7939f50c0a01cbf0148b9", "Bay Area 511 Mission Bay Schedule": "ab8ee18c67481a87850f508bc43dba43", "Bay Area 511 Muni Schedule": "a54b3af296fc9ecf295244b8047f861d", "Bay Area 511 Petaluma Schedule": "f744fee4856fcd946fe2c3952e2d286e", "Bay Area 511 Rio Vista Delta Breeze Schedule": "31a4b45aa9c6e4b386d0205ca80253e7", "Bay Area 511 SFO AirTrain Schedule": "55d8763ca8845a4efa50e40a9b972e1c", "Bay Area 511 SamTrans Schedule": "50c57de0aa5a17d745926d99b95fc28a", "Bay Area 511 San Francisco Bay Ferry Schedule": "9afe602959b2c80a5a371c2cca2f0b58", "Bay Area 511 Santa Clara Transit Schedule": "c3e50751074542e56b1ca6352c8c53ab", "Bay Area 511 Santa Rosa CityBus Schedule": "f39d68191789fc375e4750bfd10d597a", "Bay Area 511 SolTrans Schedule": "2b09f4c332861b1f2e0190f52aea1bb3", "Bay Area 511 Sonoma-Marin Area Rail Transit Schedule": "ff1e2c730b22a1c4aa37e7761d3255f6", "Bay Area 511 South San Francisco Shuttle Schedule": "ba630a129e34a8006799c2ee831e0e5d", "Bay Area 511 Treasure Island Ferry Schedule": "f2e6494b19a54d1e74643a515e5eb67d", "Bay Area 511 Tri Delta Schedule": "448e3f441fef94d57d32de8e1f05484a", "Bay Area 511 Tri-Valley Wheels Schedule": "a19cbdd982b19fb736cbfd5f66b29bc0", "Bay Area 511 Union City Transit Schedule": "ed7a212f2a38fd8734244030b40e4d07", "Bay Area 511 Vacaville City Coach Schedule": "5f6419482992db6e978d7ba2e408a74e", "Bay Area 511 Vine Transit Schedule": "9e6f92fd957b990c6008a7c76f3cebbb", "Bay Area 511 WestCAT Schedule": "79b538f8de5df3e9d916f7cd08afd4ab", "Beach Cities GMV Schedule": "b8a975cb0f8727e5a69a8934120534da", "Bear Schedule": "ea95c8dcb56129084dd7f5c4a119043e", "Beaumont Pass Schedule": "9da9e09185024f6bab03cc278de9886f", "Bell Gardens Schedule": "2dbcd03b82840a4b52d23828bc1fa12d", "Bellflower Bus Schedule": "63160ef89ac5a4523edde8241bdd3905", "Big Blue Bus Schedule": "4f9888472a8dad0f66bdbbd002312789", "BruinBus Schedule": "550c03554447b27ed6d94f6a1a9074fa", "Burbank Schedule": "cc6a68a39d22c29b49116584971e69a8", "Calabasas Schedule": "a8be1c96aa131a4c2271ed7048621074", "Calaveras Schedule": "838cd930bc3c5729243a61473213c6ed", "Cerritos on Wheels Schedule": "21bc6603eb89f87bfd6f9cbf86eb3ead", "Clean Air Express Schedule": "fc9e0920a9316e0dce752fdc160631b1", "Clovis Schedule": "a260afd3431d1b11bb52b577f8496079", "Commerce Schedule": "e2413128e10f674f1f445606be7d7f0a", "Corona Schedule": "dd440b1b2e4c105089c2d3254797cf13", "County Express Schedule": "c83f711290e5c31d451b6baefe527449", "Cudahy Schedule": "28d7992b079bbee059f51f5efec0edb9", "Culver City Schedule": "a6c95be16ecdae7e1c67b0af7eaeece8", "Curry Public Transit Schedule": "b4f03b635700560adc7a42440da146f2", "Delano Schedule": "cc8fa3f993eb2ddd62fc25f8d2a4f100", "Desert Roadrunner GMV Schedule": "b7358e3e54b1beaff2e2865186d53f4b", "Desert Roadrunner Schedule": "21b1880b14e2a5ed44178c6bdf817f09", "DowneyLINK GMV Schedule": "16907949a95f7afd88877e0f7546b2b8", "Eastern Sierra Schedule": "1b06d457b2be007ca1ca5ddcb5b0cd48", "El Dorado Schedule": "7519b1626b959b0fc517692b19431065", "El Monte Schedule": "773df1360d8ea58a94f1edf1389d7e90", "El Segundo Schedule": "79a12e2b0dc13e28cadceb02b67f2e84", "Elk Grove Schedule": "432c47868de169086e77d99f180b2212", "Flixbus Schedule": "c1f8fb4146874d7a15f5d39bc82bd136", "Fresno Schedule": "0b4f0b23718a0323b4b421d5f791ac0f", "G Trans Schedule": "2b834569e7f25ef28951e43d33a80a91", "GET Schedule": "c535a8170c7482780ea8f350859186fc", "Get Around Town Express Schedule": "c4295a1d95ed2bd4d9363a578000fd6a", "Glendale Schedule": "3ddde0eff9e10d1890b63994c9069a28", "Glenn Schedule": "43c8182daffb505a203d3326039951e1", "Go West Schedule": "b17c3a5b12a0f35116fc1ccbfe3f7377", "Grapeline Schedule": "73d901b57c7bd4864867d7f646118126", "Guadalupe Flyer Schedule": "5fa9af4d48e6413b60311e0ff676e657", "Havasu Landing Ferry Schedule": "5e87eda2c4c74832b576d8cc71daaef6", "Humboldt Schedule": "6bbaf3d2d76320e191547c85b2b5b483", "Huntington Schedule": "570a2010bbdafdeb65c6b2cade7267b7", "Kern Schedule": "d6e278a9183778c1cad84d65ed43a9a8", "Kings Schedule": "1e2952dd387b24f59cff4b05bc209bca", "LA DOT Schedule": "52600e5cf2ac73573921e2b1a5edd055", "LA Metro Bus Schedule": "82dd924efb837dcc0cd2c9ad2fb0f418", "LA Metro Rail Schedule": "a321aeae3869213e1ff728ef5e4530a2", "LADPW Schedule": "dceccbf372ba48fe8e399210e815a266", "LAX FlyAway Schedule": "21fa0b125d801eb5058da2ec5d748bda", "La Campana Schedule": "bf1af24c3bdcaa8f2dbb49b04bb749bc", "La Puente Schedule": "a965fb6f80747bf09f6550c52132a6ad", "Laguna Beach Schedule": "9bf604636f479b0b35c90eaff198e257", "Lake Schedule": "f1f7d2d19dbfb627a0a87ef42b11baae", "Lassen Flex": "c7cea554a5e958c1a6dae5d4f6ccdd6a", "Lassen Schedule": "55407fafa4579761cd7481c32f0d73df", "Lawndale Beat GMV Schedule": "3bf57f560af2e8ac0337b9f5ee526a40", "Lawndale Schedule": "2e77282f2d32aa83771b479304e315aa", "Lompoc Schedule": "8b2db7f63f83f1cd8b6f4783d22cf3f1", "Long Beach Schedule": "55131247c268aa4db21111cc3d9f963b", "Lynwood Schedule": "cbf2c1990bf0dbd9e8e762258daa916d", "Madera County Connection Schedule": "1e4c48029ae0cc822383ff59a526eda0", "Madera Metro Schedule": "d5ed5c6d7c25ebd77b99655a3dcf2c05", "Manteca Schedule": "afced1bd22f810e3512f8d1f2c564178", "Maywood Schedule": "c5887b6f39e29f9167a051612cd2b413", "Mendocino Schedule": "443230c6e1a639351f1aaf8cbdcf4480", "Merced GMV Schedule": "1829e7ea0a508381a298cb716bafb0d4", "Merced Schedule": "7a4bf0aaccd7aa130db46358ebdb5c26", "Metrolink Schedule": "1fc19f46e82ceb8c94281566b39a6669", "Montebello Schedule": "c661339d3e18aea9cd1772c3d3f6b26e", "Monterey Salinas Schedule": "7c49fd422169f7fcdfbbf83b0f81174f", "Morongo Basin Schedule": "3561fcdc346fea0b0076b5d3c520e4fb", "Morro Bay Cal-ITP Schedule": "0b6ae9e85ac91e1ac07ab7feb1a07025", "Mountain Transit Schedule": "d3d074aed7bfa659d40c82224d9fb65c", "Needles Schedule": "da49c06375c9e7147372ed4e0b22cb51", "Nevada County Schedule": "f7a2121f01eef823fb9018028a5c7f41", "North County Schedule": "5541f14a535f524a15f0b29c709ff8a9", "Norwalk Avail Schedule": "100287571bdd6fc29130f859003839c3", "OCTA Schedule": "4221b013a6d2b4e7edc8b4e2c5205e9b", "OmniTrans Schedule": "cf48679daf4bb84ab047eb3545235017", "Oregon POINT": "22aec1c6d914f1b56fa7d1d28b38fa9d", "Palos Verdes PTA Schedule": "8a1a28f1e315cb292cda0174f83bf168", "Pasadena Schedule": "dcd1f8fac657a30d665b52f4162b5b42", "Placer Schedule": "d27025eb857bab5c61a25b71c28046bc", "Plumas Schedule": "2f1fe743e8fa808f894eda037f1d323d", "PresidiGo Schedule": "aa4dd6132506fb6e79f3aa47f7d30c25", "Redding Schedule": "78b0708ceb49c07351f4e148520a4616", "Redwood Coast Schedule": "8ba295b256104176edafa35cec721b00", "Riverside Schedule": "1d3f8d3254f9599f50c1a2cba341221f", "Rosemead Schedule": "8d3f3a5dc869aa8651eab0d48f5aab73", "Roseville Schedule": "eb84a676e532815c20460372738db529", "SBMTD Schedule": "fbe9b7630531147f65807aaf927a1199", "SLO Schedule": "c3b4339d1086c444cd346c593bc0146e", "SLORTA Schedule": "bac571e36ad1d7d2ae3faec83599b05a", "Sacramento Schedule": "7a1f20927610bf432cff2c09ecc3751e", "Sage Stage Schedule": "748268ad11a5e83db5e4782e822e5998", "San Diego Schedule": "db8c6e0cf5ece2a8cdb5bdc71d049bd1", "San Joaquin Schedule": "d05e80a25025ae25c084c286e7175e0f", "Santa Clarita Schedule": "08970be297b350485ab0c2df6611d93a", "Santa Cruz Schedule": "1f76a02f85f8116d02cf1a9e8e8c0435", "Santa Maria Schedule": "5392e99b9f95a8f2cae17074b0592ae2", "Santa Ynez Mecatran Schedule": "638d90ba5ade8b25240024e6cae907e9", "Sierra Madre Schedule": "7497b2e09bb02196cf45d9ab664529e3", "Siskiyou Schedule": "f12e4782e7a1751f1c1e8dfb2a24861d", "South County Transit Link Schedule": "d2da5f9228647ca4de8fc50e0e70f1ec", "Spirit Bus Passio Schedule": "aa0ed6bbdfb0ba4a9fc1ffaf032eb550", "StanRTA Schedule": "20d4af635fd58ea03fd6716da16b5752", "Stanford Schedule": "2cd865d982bdf94dfb26098a0d711dc4", "SunLine Avail Schedule": "acb4406d86c941ffce5dc80c99a8894a", "TART, North Lake Tahoe Schedule": "f873cced24e0672a7d77f3cfae5f9236", "TCRTA TripShot Schedule": "590899c01b7f133c0f6afff59b5d9139", "Tahoe Transportation District GMV Schedule": "ab281d4512b4829b8fc5d75343dfa1cb", "Tahoe Transportation District Schedule": "2c81de89a7463d5ca5df230d0ceb40fd", "Tehama Schedule": "66595856a15545c6b6ca45a69d119675", "Torrance Schedule": "8c50b8f4196a981d7da3abb13571b7fe", "Tracy Schedule": "002790c3b23889605c337dc8129ee1c2", "Trinity Schedule": "9b9530af631a95abeb38f9e087238001", "Turlock Schedule": "a200a4de5134e969beada4855e80f31f", "Unitrans Schedule": "494b3dc95537496ab45385043087219c", "VCTC GMV Schedule": "981e8b8493a87fdec6f615e7d25d4fa3", "Victor Valley GMV Schedule": "86595d761a9417f9adbaaadb398ad032", "Victor Valley Schedule": "2cd77eafa44d59fca296c41401c87293", "Visalia Schedule": "bcafab0e50124b12c66b0eee024b0269", "YARTS Schedule": "20e4b67650c2363b1e26b21ec725ab17", "Yolobus Schedule": "326ef13938b53754ff8d4056f074c6a5", "Yuba-Sutter Schedule": "a4991a26e70a2082454203f78dab8b74", "Yuma Schedule": "cb17eac6579cda46a96179f6f29a807c", "eTrans Schedule": "34d23ec988be15989fd45f6d3c69d11d"}} \ No newline at end of file +{"VALID_FEED_KEYS": {"Alhambra Schedule": "63cda8c6bbe285fdee43b0fc5db77cf8", "Amador Schedule": "4ce9825a6c3607c50c5192c90f768239", "Anaheim Resort Schedule": "32e4be1aea096994ee6f2f701b940a84", "Antelope Valley Transit Authority Schedule": "989d48ae6ae192c64c185646b6a6ae06", "Arcadia Schedule": "beb80985c23670c8a6476f23be07c202", "Arvin Schedule": "7c0ba48c48f7ccd9b07a7c5d1151b4be", "Auburn Schedule": "6a5f537fa23a799706529745dbdbabaa", "B-Line Schedule": "408d5281150088de69df641d7275410c", "Baldwin Park Schedule": "0994a6114f881944475caafc3a8996eb", "Banning Pass Schedule": "b9a191f594d451d8b245884b61eec402", "Bay Area 511 AC Transit Schedule": "3ed66c11d38d2d3e5a610c6d1b34ec2a", "Bay Area 511 ACE Schedule": "b26450ddb2c9172f1ab428cac72b3fb1", "Bay Area 511 BART Schedule": "8dc55a4a9d5c0e79e1340c00aec39091", "Bay Area 511 Caltrain Schedule": "2a9ce9d241f926b9c2b93b918e3fa51c", "Bay Area 511 Capitol Corridor Schedule": "e3c7393dfcc45fb6025e65d51398bd79", "Bay Area 511 Commute.org Schedule": "107b556632e4eebbbaa062dce316edc2", "Bay Area 511 County Connection Schedule": "2aa353e11dbf4ca87f156324bdcd11ab", "Bay Area 511 Dumbarton Express Schedule": "0a8c86da361241493a1dc2cf31bb6e0f", "Bay Area 511 Emery Go-Round Schedule": "56b15cc305dc8faeef2038774ad04109", "Bay Area 511 Fairfield and Suisun Transit Schedule": "ad5caa91630ce8fe2d8bd7eca0657cc2", "Bay Area 511 Golden Gate Ferry Schedule": "1df9f9a60e2e12b638ffdef78f4b5e49", "Bay Area 511 Golden Gate Transit Schedule": "9b31e3b031eef08ad80a87fe9ee29a0f", "Bay Area 511 MVGO Schedule": "b6556289ed5faba35f5a6e17adf943c1", "Bay Area 511 Marin Schedule": "744ef5b993e7939f50c0a01cbf0148b9", "Bay Area 511 Mission Bay Schedule": "ab8ee18c67481a87850f508bc43dba43", "Bay Area 511 Muni Schedule": "36cb7395061d5a38f2beeae8b1bcda0a", "Bay Area 511 Petaluma Schedule": "f744fee4856fcd946fe2c3952e2d286e", "Bay Area 511 Rio Vista Delta Breeze Schedule": "31a4b45aa9c6e4b386d0205ca80253e7", "Bay Area 511 SFO AirTrain Schedule": "55d8763ca8845a4efa50e40a9b972e1c", "Bay Area 511 SamTrans Schedule": "63e5c9c9f32aa643153dc4c6f26dac4b", "Bay Area 511 San Francisco Bay Ferry Schedule": "9afe602959b2c80a5a371c2cca2f0b58", "Bay Area 511 Santa Clara Transit Schedule": "75035c6932793bce0fe2d1c7f326ff79", "Bay Area 511 Santa Rosa CityBus Schedule": "1c2ff7bc8106da093aba16b3313e7129", "Bay Area 511 SolTrans Schedule": "25a58143f929c56022d161730343b51e", "Bay Area 511 Sonoma County Transit Schedule": "a59f867c13011a6ac908f776d51fdaea", "Bay Area 511 Sonoma-Marin Area Rail Transit Schedule": "ff1e2c730b22a1c4aa37e7761d3255f6", "Bay Area 511 South San Francisco Shuttle Schedule": "ba630a129e34a8006799c2ee831e0e5d", "Bay Area 511 Treasure Island Ferry Schedule": "119794b290ff1f99e5e9e113fbaa847a", "Bay Area 511 Tri Delta Schedule": "448e3f441fef94d57d32de8e1f05484a", "Bay Area 511 Tri-Valley Wheels Schedule": "a19cbdd982b19fb736cbfd5f66b29bc0", "Bay Area 511 Union City Transit Schedule": "ed7a212f2a38fd8734244030b40e4d07", "Bay Area 511 Vacaville City Coach Schedule": "5f6419482992db6e978d7ba2e408a74e", "Bay Area 511 Vine Transit Schedule": "5f484f169dde5ea2418f66738625777c", "Bay Area 511 WestCAT Schedule": "79b538f8de5df3e9d916f7cd08afd4ab", "Beach Cities GMV Schedule": "03568759e0fd897a68c9847794bacd6b", "Bear Schedule": "ea95c8dcb56129084dd7f5c4a119043e", "Beaumont Pass Schedule": "9da9e09185024f6bab03cc278de9886f", "Bell Gardens Schedule": "2dbcd03b82840a4b52d23828bc1fa12d", "Bellflower Bus Schedule": "63160ef89ac5a4523edde8241bdd3905", "Big Blue Bus Schedule": "4f9888472a8dad0f66bdbbd002312789", "BruinBus Schedule": "2cbe665ac64413246fda0871305d4fa5", "Burbank Schedule": "cc6a68a39d22c29b49116584971e69a8", "Calabasas Schedule": "a8be1c96aa131a4c2271ed7048621074", "Calaveras Schedule": "838cd930bc3c5729243a61473213c6ed", "Cerritos on Wheels Schedule": "e8b76578f756d3549e979b9f4221efcd", "Clovis Schedule": "a260afd3431d1b11bb52b577f8496079", "Commerce Schedule": "21079b3359aec64e8d5794b2f5ad8754", "Corona Schedule": "dd440b1b2e4c105089c2d3254797cf13", "County Express Schedule": "c83f711290e5c31d451b6baefe527449", "Cudahy Schedule": "28d7992b079bbee059f51f5efec0edb9", "Culver City Schedule": "a6c95be16ecdae7e1c67b0af7eaeece8", "Curry Public Transit Schedule": "b4f03b635700560adc7a42440da146f2", "Delano Schedule": "cc8fa3f993eb2ddd62fc25f8d2a4f100", "Desert Roadrunner GMV Schedule": "b7358e3e54b1beaff2e2865186d53f4b", "Desert Roadrunner Schedule": "21b1880b14e2a5ed44178c6bdf817f09", "DowneyLINK GMV Schedule": "16907949a95f7afd88877e0f7546b2b8", "Eastern Sierra Schedule": "e6e9970a5a71f9cc7744715c74dc4be5", "El Monte Schedule": "773df1360d8ea58a94f1edf1389d7e90", "El Segundo Schedule": "79a12e2b0dc13e28cadceb02b67f2e84", "Elk Grove Schedule": "e242a070135c77d6b29532710535ceac", "Flixbus Schedule": "0be541db97cfd882b514113d0b07331e", "Fresno County Schedule": "4fa9d5ffeaf91b69907c157823bbd630", "Fresno Schedule": "0b4f0b23718a0323b4b421d5f791ac0f", "GET Schedule": "43b5d727ce3c6284343d1c4c68021d5d", "Get Around Town Express Schedule": "aa76a2c389737d128e7cb47645dbff56", "Glendale Schedule": "3ddde0eff9e10d1890b63994c9069a28", "Glendora Schedule": "589baf4d91dd3c977d4e3ceb8577ab80", "Glenn Schedule": "43c8182daffb505a203d3326039951e1", "Go West Schedule": "b17c3a5b12a0f35116fc1ccbfe3f7377", "Grapeline Schedule": "73d901b57c7bd4864867d7f646118126", "Guadalupe Flyer Schedule": "5fa9af4d48e6413b60311e0ff676e657", "Havasu Landing Ferry Schedule": "5e87eda2c4c74832b576d8cc71daaef6", "Humboldt Schedule": "be03a73d3aec05cd63e4f202bff14be2", "Huntington Schedule": "570a2010bbdafdeb65c6b2cade7267b7", "Inglewood Schedule": "2243361a94f531aebfc3238755efafe0", "Kern Schedule": "d6e278a9183778c1cad84d65ed43a9a8", "Kings Schedule": "1e2952dd387b24f59cff4b05bc209bca", "LA DOT Schedule": "027d34cc5f198c0f977336eb11b022fd", "LA Metro Bus Schedule": "abeff52a3d6c1b064b1476e76efcd7eb", "LA Metro Rail Schedule": "ab5ba8c779e385d1b45720811c3055db", "LADPW Schedule": "dceccbf372ba48fe8e399210e815a266", "LAX FlyAway Schedule": "2fa463c64a2cad71ce1a13f9e6d0347f", "La Campana Schedule": "bf1af24c3bdcaa8f2dbb49b04bb749bc", "La Puente Schedule": "a965fb6f80747bf09f6550c52132a6ad", "Laguna Beach Schedule": "9bf604636f479b0b35c90eaff198e257", "Lake Schedule": "f1f7d2d19dbfb627a0a87ef42b11baae", "Lassen Flex": "c7cea554a5e958c1a6dae5d4f6ccdd6a", "Lassen Schedule": "55407fafa4579761cd7481c32f0d73df", "Lawndale Beat GMV Schedule": "3bf57f560af2e8ac0337b9f5ee526a40", "Lawndale Schedule": "2e77282f2d32aa83771b479304e315aa", "Lompoc Schedule": "8b2db7f63f83f1cd8b6f4783d22cf3f1", "Long Beach Schedule": "f21ba74c076985b449546c2d95c37c71", "Lynwood Schedule": "cbf2c1990bf0dbd9e8e762258daa916d", "Madera County Connection Schedule": "285a03115de490eeeb9dd92401f79d86", "Madera Metro Schedule": "726a476a7c2917a2cd7c94a409c5d0c5", "Manteca Schedule": "afced1bd22f810e3512f8d1f2c564178", "Maywood Schedule": "c5887b6f39e29f9167a051612cd2b413", "Mendocino Schedule": "7fc04b7067ee87146419f488d96925e2", "Merced GMV Schedule": "f9647f4843bc626496ce0713d3515c12", "Merced Schedule": "7a4bf0aaccd7aa130db46358ebdb5c26", "Metrolink Schedule": "1fc19f46e82ceb8c94281566b39a6669", "Montebello Schedule": "224bf24f6aa76263b3fc0da4bb7d8742", "Monterey Salinas Schedule": "2732f33e387ba4cf18db112652f27e82", "Morongo Basin Schedule": "3561fcdc346fea0b0076b5d3c520e4fb", "Morro Bay Cal-ITP Schedule": "0b6ae9e85ac91e1ac07ab7feb1a07025", "Mountain Transit Schedule": "d3d074aed7bfa659d40c82224d9fb65c", "Needles Schedule": "da49c06375c9e7147372ed4e0b22cb51", "Nevada County Schedule": "f7a2121f01eef823fb9018028a5c7f41", "North County Schedule": "5541f14a535f524a15f0b29c709ff8a9", "Norwalk Avail Schedule": "100287571bdd6fc29130f859003839c3", "OCTA Schedule": "fc78f3d0dd81deaafc8579658a601979", "OmniTrans Schedule": "cf48679daf4bb84ab047eb3545235017", "Oregon POINT": "22aec1c6d914f1b56fa7d1d28b38fa9d", "Palos Verdes PTA Schedule": "a8f962b2a267af7219934c633f70010e", "Pasadena Schedule": "2fe2507b367e9b7de273638253b12736", "Placer Schedule": "0f541ed38d1f1d7ca7e5644ca897df8f", "Plumas Schedule": "2f1fe743e8fa808f894eda037f1d323d", "PresidiGo Schedule": "aa4dd6132506fb6e79f3aa47f7d30c25", "Redding Schedule": "7473dd848115dab4c7398ae2c9bed32e", "Redwood Coast Schedule": "87c96d5026263d6986f2cabe6892390c", "Riverside Schedule": "1d3f8d3254f9599f50c1a2cba341221f", "Rosemead Schedule": "8d3f3a5dc869aa8651eab0d48f5aab73", "Roseville Schedule": "eb84a676e532815c20460372738db529", "SBMTD Schedule": "4c1d21267c7623c3ab3a53e594545e09", "SLO Schedule": "c3b4339d1086c444cd346c593bc0146e", "SLORTA Schedule": "bac571e36ad1d7d2ae3faec83599b05a", "Sacramento Schedule": "7a1f20927610bf432cff2c09ecc3751e", "Sage Stage Schedule": "36172c7bc5b28993bc16550722793a97", "San Diego Schedule": "db8c6e0cf5ece2a8cdb5bdc71d049bd1", "San Joaquin Schedule": "5b28e1f173801414d73b6e6d38eb037c", "Santa Clarita Schedule": "257cc2d386f044176b9df3c5caeda7fc", "Santa Maria Schedule": "14dee63047914f25fd449d8d072976f9", "Santa Ynez Mecatran Schedule": "638d90ba5ade8b25240024e6cae907e9", "Sierra Madre Schedule": "7497b2e09bb02196cf45d9ab664529e3", "Siskiyou Schedule": "f12e4782e7a1751f1c1e8dfb2a24861d", "South County Transit Link Schedule": "d2da5f9228647ca4de8fc50e0e70f1ec", "Spirit Bus Passio Schedule": "8b5212e73c76745636af5441bdc53126", "Stanford Schedule": "2cd865d982bdf94dfb26098a0d711dc4", "SunLine Avail Schedule": "acb4406d86c941ffce5dc80c99a8894a", "TART, North Lake Tahoe Schedule": "21279ca99b580876dde7723241a35cc1", "TCRTA TripShot Schedule": "b2f31e68f5540ba1f004fec60d7210d1", "Tahoe Transportation District GMV Schedule": "c7bfff694a904987a1536a3b5b283da2", "Tahoe Transportation District Schedule": "2c81de89a7463d5ca5df230d0ceb40fd", "Tehama Schedule": "b9e75e0e9b59f047993303b0e6661d06", "Torrance Schedule": "8c50b8f4196a981d7da3abb13571b7fe", "Tracy Schedule": "002790c3b23889605c337dc8129ee1c2", "Trinity Schedule": "62fd7a2e33ec8ee826a52b39ce876c1a", "Turlock Schedule": "a200a4de5134e969beada4855e80f31f", "Unitrans Schedule": "9e0f4e4dc580d7b1e9c7d0b74affb2a3", "VCTC GMV Schedule": "739b9aee397417176e0a2e787314de32", "Victor Valley GMV Schedule": "ead053d8e591aa10163c0144bf142815", "Victor Valley Schedule": "1127081b46abe8fc5bf6e0961765b3d0", "Visalia Schedule": "da71b7bad5421e2141005ecfcb4fbd3c", "YARTS Schedule": "20e4b67650c2363b1e26b21ec725ab17", "Yolobus Schedule": "9097af5e9a0e3909ca754a46ca037919", "Yosemite Valley Shuttle Schedule": "f5c7576953c56581626ecf780e87684c", "Yuba-Sutter Schedule": "a9eee46a1213e1bdf5b3268ebdb5a380", "Yuma Schedule": "cb17eac6579cda46a96179f6f29a807c", "eTrans Schedule": "34d23ec988be15989fd45f6d3c69d11d"}} \ No newline at end of file diff --git a/open_data/update_vars.py b/open_data/update_vars.py index dbf5a2262..42be4729f 100644 --- a/open_data/update_vars.py +++ b/open_data/update_vars.py @@ -1,7 +1,7 @@ from pathlib import Path from shared_utils import rt_dates -analysis_date = rt_dates.DATES["jan2024"] +analysis_date = rt_dates.DATES["feb2024"] GCS_FILE_PATH = "gs://calitp-analytics-data/data-analyses/" COMPILED_CACHED_VIEWS = f"{GCS_FILE_PATH}rt_delay/compiled_cached_views/" From cb08f8e7bfd271e2e69ee5470514e5a67938f4e2 Mon Sep 17 00:00:00 2001 From: tiffanychu90 Date: Thu, 15 Feb 2024 20:10:42 +0000 Subject: [PATCH 02/15] use dask_utils to export? --- gtfs_funnel/vp_condenser.py | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/gtfs_funnel/vp_condenser.py b/gtfs_funnel/vp_condenser.py index d84dac9ed..90ac884e7 100644 --- a/gtfs_funnel/vp_condenser.py +++ b/gtfs_funnel/vp_condenser.py @@ -14,7 +14,7 @@ from calitp_data_analysis import utils from segment_speed_utils import vp_transform, wrangle_shapes from segment_speed_utils.project_vars import SEGMENT_GCS - +from shared_utils import dask_utils def condense_vp_to_linestring( analysis_date: str, @@ -102,7 +102,13 @@ def prepare_vp_for_all_directions( for direction in wrangle_shapes.ALL_DIRECTIONS ] - results = [compute(i)[0] for i in dfs] + dask_utils.compute_and_export( + dfs, + SEGMENT_GCS, + file_name =f"{EXPORT_FILE}_{analysis_date}", + export_single_parquet = True, + ) + ''' gdf = pd.concat( results, axis=0, ignore_index=True ).sort_values( @@ -118,7 +124,7 @@ def prepare_vp_for_all_directions( ) del gdf - + ''' return @@ -136,13 +142,13 @@ def prepare_vp_for_all_directions( for analysis_date in analysis_date_list: start = datetime.datetime.now() - condense_vp_to_linestring(analysis_date, CONFIG_DICT) + #condense_vp_to_linestring(analysis_date, CONFIG_DICT) time1 = datetime.datetime.now() - logger.info( - f"{analysis_date}: condense vp for trip-direction " - f"{time1 - start}" - ) + #logger.info( + # f"{analysis_date}: condense vp for trip-direction " + # f"{time1 - start}" + #) prepare_vp_for_all_directions(analysis_date, CONFIG_DICT) From 88a050bea79a490d7e7a11764a56e9ffccd7ae00 Mon Sep 17 00:00:00 2001 From: tiffanychu90 Date: Thu, 15 Feb 2024 21:12:19 +0000 Subject: [PATCH 03/15] change log statement --- gtfs_funnel/logs/vp_preprocessing.log | 16 +++++++++------- gtfs_funnel/vp_condenser.py | 22 ++++++++-------------- 2 files changed, 17 insertions(+), 21 deletions(-) diff --git a/gtfs_funnel/logs/vp_preprocessing.log b/gtfs_funnel/logs/vp_preprocessing.log index 935f1453f..40872d22d 100644 --- a/gtfs_funnel/logs/vp_preprocessing.log +++ b/gtfs_funnel/logs/vp_preprocessing.log @@ -3,10 +3,12 @@ 2024-01-27 14:27:17.221 | INFO | __main__::136 - 2023-11-15: condense vp for trip-direction 0:07:23.319808 2024-01-27 14:39:49.578 | INFO | __main__::144 - 2023-11-15: prepare vp to use in nearest neighbor: 0:12:32.357147 2024-01-27 14:46:57.364 | INFO | __main__::136 - 2023-10-11: condense vp for trip-direction 0:07:07.785109 -2024-01-27 14:58:58.072 | INFO | __main__::144 - 2023-10-11: prepare vp to use in nearest neighbor: 0:12:00.7079612024-02-15 09:41:33.748 | INFO | __main__::169 - 2024-02-14: pare down vp: 0:01:27.651510 -2024-02-15 09:44:30.781 | INFO | __main__:attach_prior_vp_add_direction:89 - persist vp gddf: 0:02:42.188876 -2024-02-15 09:47:04.578 | INFO | __main__:attach_prior_vp_add_direction:121 - np vectorize arrays for direction: 0:02:33.796804 -2024-02-15 09:47:10.531 | INFO | __main__::193 - 2024-02-14: export vp direction: 0:05:21.938881 -2024-02-15 09:48:06.074 | INFO | __main__::199 - 2024-02-14: export usable vp with direction: 0:00:55.543053 -2024-02-15 09:48:06.075 | INFO | __main__::202 - 2024-02-14: vp_direction script execution time: 0:06:17.481934 -2024-02-15 10:01:29.162 | INFO | __main__::142 - 2024-02-14: condense vp for trip-direction 0:13:09.224619 +2024-01-27 14:58:58.072 | INFO | __main__::144 - 2023-10-11: prepare vp to use in nearest neighbor: 0:12:00.707961 +2024-02-15 12:35:27.737 | INFO | __main__::169 - 2024-02-14: pare down vp: 0:01:27.967360 +2024-02-15 12:40:05.610 | INFO | __main__:attach_prior_vp_add_direction:89 - persist vp gddf: 0:02:46.966446 +2024-02-15 12:42:39.989 | INFO | __main__:attach_prior_vp_add_direction:121 - np vectorize arrays for direction: 0:02:34.378961 +2024-02-15 12:42:45.707 | INFO | __main__::193 - 2024-02-14: export vp direction: 0:05:27.063384 +2024-02-15 12:43:43.624 | INFO | __main__::199 - 2024-02-14: export usable vp with direction: 0:00:57.917219 +2024-02-15 12:43:43.624 | INFO | __main__::202 - 2024-02-14: vp_direction script execution time: 0:06:24.980603 +2024-02-15 12:50:35.377 | INFO | __main__::142 - 2024-02-14: condense vp for trip-direction 0:06:37.853370 +2024-02-15 13:02:43.454 | INFO | __main__::150 - 2024-02-14: prepare vp to use in nearest neighbor: 0:12:08.077021 diff --git a/gtfs_funnel/vp_condenser.py b/gtfs_funnel/vp_condenser.py index 90ac884e7..d54b7d777 100644 --- a/gtfs_funnel/vp_condenser.py +++ b/gtfs_funnel/vp_condenser.py @@ -14,7 +14,6 @@ from calitp_data_analysis import utils from segment_speed_utils import vp_transform, wrangle_shapes from segment_speed_utils.project_vars import SEGMENT_GCS -from shared_utils import dask_utils def condense_vp_to_linestring( analysis_date: str, @@ -102,13 +101,8 @@ def prepare_vp_for_all_directions( for direction in wrangle_shapes.ALL_DIRECTIONS ] - dask_utils.compute_and_export( - dfs, - SEGMENT_GCS, - file_name =f"{EXPORT_FILE}_{analysis_date}", - export_single_parquet = True, - ) - ''' + results = [compute(i)[0] for i in dfs] + gdf = pd.concat( results, axis=0, ignore_index=True ).sort_values( @@ -124,7 +118,7 @@ def prepare_vp_for_all_directions( ) del gdf - ''' + return @@ -142,13 +136,13 @@ def prepare_vp_for_all_directions( for analysis_date in analysis_date_list: start = datetime.datetime.now() - #condense_vp_to_linestring(analysis_date, CONFIG_DICT) + condense_vp_to_linestring(analysis_date, CONFIG_DICT) time1 = datetime.datetime.now() - #logger.info( - # f"{analysis_date}: condense vp for trip-direction " - # f"{time1 - start}" - #) + logger.info( + f"{analysis_date}: condense vp for trip " + f"{time1 - start}" + ) prepare_vp_for_all_directions(analysis_date, CONFIG_DICT) From 6d5f44b489f46b7fc8081e2c3d0b8534f2b82367 Mon Sep 17 00:00:00 2001 From: tiffanychu90 Date: Thu, 15 Feb 2024 22:56:29 +0000 Subject: [PATCH 04/15] feb speeds, remove reference to utils_to_add --- rt_segment_speeds/logs/avg_speeds.log | 5 +++++ rt_segment_speeds/logs/cut_stop_segments.log | 7 +------ rt_segment_speeds/logs/interpolate_stop_arrival.log | 9 +-------- rt_segment_speeds/logs/nearest_vp.log | 11 ++--------- rt_segment_speeds/logs/speeds_by_segment_trip.log | 8 ++------ rt_segment_speeds/scripts/average_speeds.py | 13 ++++++------- rt_segment_speeds/scripts/cut_stop_segments.py | 5 ++--- rt_segment_speeds/scripts/nearest_vp_to_stop.py | 9 ++++----- rt_segment_speeds/scripts/select_stop_segments.py | 5 ++--- .../segment_speed_utils/array_utils.py | 2 +- 10 files changed, 26 insertions(+), 48 deletions(-) diff --git a/rt_segment_speeds/logs/avg_speeds.log b/rt_segment_speeds/logs/avg_speeds.log index 31e4d476b..7b5f7d87d 100644 --- a/rt_segment_speeds/logs/avg_speeds.log +++ b/rt_segment_speeds/logs/avg_speeds.log @@ -14,3 +14,8 @@ 2024-01-30 10:22:12.414 | INFO | __main__:multi_day_averages:338 - route seg avg 0:02:29.962531 2024-01-30 10:22:54.131 | INFO | __main__:multi_day_averages:377 - route dir avg 0:00:41.717110 2024-01-30 10:22:54.176 | INFO | __main__::443 - average rollups for ['2023-10-09', '2023-10-10', '2023-10-11', '2023-10-12', '2023-10-13', '2023-10-14', '2023-10-15']: 0:03:11.725898 +2024-02-15 14:52:09.597 | INFO | __main__:single_day_averages:194 - shape seg avg 0:00:47.942274 +2024-02-15 14:52:55.960 | INFO | __main__:single_day_averages:227 - route dir seg avg 0:00:46.362889 +2024-02-15 14:52:57.307 | INFO | __main__:single_day_averages:244 - trip avg 0:00:01.346473 +2024-02-15 14:53:05.722 | INFO | __main__:single_day_averages:276 - route dir avg: 0:00:08.415679 +2024-02-15 14:53:11.404 | INFO | __main__::433 - average rollups for 2024-01-17: 0:01:52.695658 diff --git a/rt_segment_speeds/logs/cut_stop_segments.log b/rt_segment_speeds/logs/cut_stop_segments.log index bf73b7f77..9948fde98 100644 --- a/rt_segment_speeds/logs/cut_stop_segments.log +++ b/rt_segment_speeds/logs/cut_stop_segments.log @@ -1,6 +1 @@ -2024-01-17 08:51:37.506 | INFO | __main__::71 - Analysis date: 2023-12-13 -2024-01-17 09:13:47.443 | INFO | __main__::118 - cut segments for all trips: 0:22:09.920160 -2024-01-25 17:55:11.789 | INFO | __main__::151 - cut segments 2024-01-17: 0:15:20.866136 -2024-01-25 18:10:52.489 | INFO | __main__::151 - cut segments 2023-12-13: 0:15:40.699105 -2024-01-25 18:26:27.834 | INFO | __main__::151 - cut segments 2023-11-15: 0:15:35.343763 -2024-01-25 18:41:57.495 | INFO | __main__::151 - cut segments 2023-10-11: 0:15:29.660398 \ No newline at end of file +0:15:29.6603982024-02-15 13:36:56.379 | INFO | __main__::156 - cut segments 2024-02-14: 0:13:55.835925 diff --git a/rt_segment_speeds/logs/interpolate_stop_arrival.log b/rt_segment_speeds/logs/interpolate_stop_arrival.log index db06f6283..5e358198e 100644 --- a/rt_segment_speeds/logs/interpolate_stop_arrival.log +++ b/rt_segment_speeds/logs/interpolate_stop_arrival.log @@ -1,8 +1 @@ -2023-12-14 11:37:11.735 | INFO | __main__::215 - Analysis date: 2023-12-13 -2023-12-14 11:39:47.181 | INFO | __main__:main:184 - stop_segments: set up df with nearest / subseq vp info: 0:02:35.392831 -2023-12-14 11:40:48.345 | INFO | __main__:main:190 - interpolate stop arrival: 0:01:01.164427 -2023-12-14 11:40:59.919 | INFO | __main__:main:196 - execution time for stop_segments: 0:03:48.131217 -2024-01-24 09:54:22.652 | INFO | __main__:interpolate_stop_arrivals:107 - get stop arrivals 2024-01-17: 0:10:11.131591 -2024-01-27 19:51:50.425 | INFO | __main__:interpolate_stop_arrivals:110 - get stop arrivals 2023-12-13: 0:09:47.554048 -2024-01-27 20:02:03.868 | INFO | __main__:interpolate_stop_arrivals:110 - get stop arrivals 2023-11-15: 0:10:13.251370 -2024-01-27 20:11:39.908 | INFO | __main__:interpolate_stop_arrivals:110 - get stop arrivals 2023-10-11: 0:09:35.901028 \ No newline at end of file +2024-02-15 14:18:47.082 | INFO | __main__:interpolate_stop_arrivals:110 - get stop arrivals 2024-02-14: 0:09:37.655118 diff --git a/rt_segment_speeds/logs/nearest_vp.log b/rt_segment_speeds/logs/nearest_vp.log index 1084cda97..03724a3f0 100644 --- a/rt_segment_speeds/logs/nearest_vp.log +++ b/rt_segment_speeds/logs/nearest_vp.log @@ -1,9 +1,2 @@ -2023-12-14 11:24:08.032 | INFO | __main__::342 - Analysis date: 2023-12-13 -2023-12-14 11:30:59.475 | INFO | __main__:find_nearest_vp_to_stop:280 - map partitions to transform vp: 0:06:51.416122 -2023-12-14 11:31:01.378 | INFO | __main__:find_nearest_vp_to_stop:312 - map partitions to find nearest vp to stop: 0:00:01.903498 -2024-01-27 13:45:18.221 | INFO | __main__:nearest_neighbor_shape_segments:203 - shape segments 2023-12-13: 0:11:38.045844 -2024-01-27 14:19:15.940 | INFO | __main__:nearest_neighbor_shape_segments:206 - shape segments 2023-12-13: 0:11:37.741682 -2024-01-27 17:07:34.843 | INFO | __main__:nearest_neighbor_shape_segments:204 - shape segments 2023-11-15: 0:12:02.309702 -2024-01-27 17:19:42.602 | INFO | __main__:nearest_neighbor_rt_stop_times:136 - RT stop times 2023-11-15: 0:12:04.187679 -2024-01-27 17:46:11.054 | INFO | __main__:nearest_neighbor_shape_segments:204 - shape segments 2023-10-11: 0:11:47.793159 -2024-01-27 17:58:02.005 | INFO | __main__:nearest_neighbor_rt_stop_times:136 - RT stop times 2023-10-11: 0:11:47.705595 \ No newline at end of file +2024-02-15 13:48:26.270 | INFO | __main__:nearest_neighbor_shape_segments:203 - shape segments 2024-02-14: 0:10:31.474349 +2024-02-15 14:08:52.783 | INFO | __main__:nearest_neighbor_rt_stop_times:135 - RT stop times 2024-02-14: 0:11:07.883083 diff --git a/rt_segment_speeds/logs/speeds_by_segment_trip.log b/rt_segment_speeds/logs/speeds_by_segment_trip.log index 291d0dbee..a350bda9e 100644 --- a/rt_segment_speeds/logs/speeds_by_segment_trip.log +++ b/rt_segment_speeds/logs/speeds_by_segment_trip.log @@ -1,6 +1,2 @@ -2024-01-24 17:15:10.165 | INFO | __main__:calculate_speed_from_stop_arrivals:132 - speeds by segment: 2024-01-17: 0:00:25.610204 -2024-01-27 20:12:24.879 | INFO | __main__:calculate_speed_from_stop_arrivals:132 - speeds by segment: 2023-12-13: 0:00:26.567386 -2024-01-27 20:12:50.577 | INFO | __main__:calculate_speed_from_stop_arrivals:132 - speeds by segment: 2023-11-15: 0:00:25.530726 -2024-01-27 20:13:15.096 | INFO | __main__:calculate_speed_from_stop_arrivals:132 - speeds by segment: 2023-10-11: 0:00:24.355903 -2024-01-28 15:12:19.958 | INFO | __main__:calculate_speed_from_stop_arrivals:132 - speeds by segment: 2023-09-13: 0:00:21.749183 -2024-01-28 15:12:40.323 | INFO | __main__:calculate_speed_from_stop_arrivals:132 - \ No newline at end of file +2024-02-15 14:19:36.965 | INFO | __main__:calculate_speed_from_stop_arrivals:132 - speeds by segment: 2024-02-14: 0:00:31.989535 +2024-02-15 14:45:36.035 | INFO | __main__:calculate_speed_from_stop_arrivals:132 - speeds by segment: 2024-01-17: 0:00:32.109610 diff --git a/rt_segment_speeds/scripts/average_speeds.py b/rt_segment_speeds/scripts/average_speeds.py index cda502b92..4f9b6a47a 100644 --- a/rt_segment_speeds/scripts/average_speeds.py +++ b/rt_segment_speeds/scripts/average_speeds.py @@ -12,7 +12,6 @@ from typing import Literal from calitp_data_analysis.geography_utils import WGS84 -from shared_utils import utils_to_add from calitp_data_analysis import utils from segment_speed_utils import (gtfs_schedule_wrangling, helpers, segment_calcs, time_helpers) @@ -183,7 +182,7 @@ def single_day_averages(analysis_date: str, dict_inputs: dict): columns = col_order + ["geometry"] ) - utils_to_add.geoparquet_gcs_export( + utils.geoparquet_gcs_export( shape_stop_segments, SEGMENT_GCS, f"{SHAPE_SEG_FILE}_{analysis_date}" @@ -216,7 +215,7 @@ def single_day_averages(analysis_date: str, dict_inputs: dict): columns = col_order + ["geometry"] ) - utils_to_add.geoparquet_gcs_export( + utils.geoparquet_gcs_export( route_dir_segments, SEGMENT_GCS, f"{ROUTE_SEG_FILE}_{analysis_date}" @@ -265,7 +264,7 @@ def single_day_averages(analysis_date: str, dict_inputs: dict): columns = col_order + ["route_name", "geometry"] ) - utils_to_add.geoparquet_gcs_export( + utils.geoparquet_gcs_export( route_dir_avg, SEGMENT_GCS, f"{ROUTE_DIR_FILE}_{analysis_date}" @@ -328,7 +327,7 @@ def multi_day_averages(analysis_date_list: list, dict_inputs: dict): columns = col_order + ["geometry"] ) - utils_to_add.geoparquet_gcs_export( + utils.geoparquet_gcs_export( route_dir_segments, SEGMENT_GCS, f"{ROUTE_SEG_FILE}_{time_span_str}" @@ -433,7 +432,7 @@ def stage_open_data_exports(analysis_date: str, dict_inputs: dict): logger.info(f"average rollups for {analysis_date}: {end - start}") - + ''' for month in ["apr2023", "oct2023"]: start = datetime.datetime.now() @@ -443,5 +442,5 @@ def stage_open_data_exports(analysis_date: str, dict_inputs: dict): end = datetime.datetime.now() logger.info(f"average rollups for {one_week}: {end - start}") - + ''' \ No newline at end of file diff --git a/rt_segment_speeds/scripts/cut_stop_segments.py b/rt_segment_speeds/scripts/cut_stop_segments.py index a5dfb464c..6b29a6392 100644 --- a/rt_segment_speeds/scripts/cut_stop_segments.py +++ b/rt_segment_speeds/scripts/cut_stop_segments.py @@ -14,8 +14,7 @@ from loguru import logger -#from calitp_data_analysis import utils -from shared_utils import utils_to_add +from calitp_data_analysis import utils from calitp_data_analysis.geography_utils import WGS84 from segment_speed_utils import gtfs_schedule_wrangling, helpers from segment_speed_utils.project_vars import (SEGMENT_GCS, @@ -145,7 +144,7 @@ def cut_stop_segments(analysis_date: str) -> gpd.GeoDataFrame: how = "inner" ) - utils_to_add.geoparquet_gcs_export( + utils.geoparquet_gcs_export( segments, SEGMENT_GCS, f"{SEGMENT_FILE}_{analysis_date}" diff --git a/rt_segment_speeds/scripts/nearest_vp_to_stop.py b/rt_segment_speeds/scripts/nearest_vp_to_stop.py index 8e3973e06..115f2492f 100644 --- a/rt_segment_speeds/scripts/nearest_vp_to_stop.py +++ b/rt_segment_speeds/scripts/nearest_vp_to_stop.py @@ -12,8 +12,7 @@ from loguru import logger from calitp_data_analysis.geography_utils import WGS84 -#from calitp_data_analysis import utils -from shared_utils import utils_to_add +from calitp_data_analysis import utils from segment_speed_utils import helpers, neighbor from segment_speed_utils.project_vars import SEGMENT_GCS @@ -108,7 +107,7 @@ def nearest_neighbor_rt_stop_times( includes all trips. Use stop sequences for each trip. """ start = datetime.datetime.now() - EXPORT_FILE = Path(f'{dict_inputs["stage2"]}') + EXPORT_FILE = f'{dict_inputs["stage2"]}' stop_times = helpers.import_scheduled_stop_times( analysis_date, @@ -126,7 +125,7 @@ def nearest_neighbor_rt_stop_times( results = add_nearest_neighbor_result(gdf, analysis_date) - utils_to_add.geoparquet_gcs_export( + utils.geoparquet_gcs_export( results, SEGMENT_GCS, f"{EXPORT_FILE}_{analysis_date}", @@ -194,7 +193,7 @@ def nearest_neighbor_shape_segments( del gdf - utils_to_add.geoparquet_gcs_export( + utils.geoparquet_gcs_export( results, SEGMENT_GCS, f"{EXPORT_FILE}_{analysis_date}", diff --git a/rt_segment_speeds/scripts/select_stop_segments.py b/rt_segment_speeds/scripts/select_stop_segments.py index 4ad607197..15035544a 100644 --- a/rt_segment_speeds/scripts/select_stop_segments.py +++ b/rt_segment_speeds/scripts/select_stop_segments.py @@ -13,8 +13,7 @@ import geopandas as gpd import pandas as pd -#from calitp_data_analysis import utils -from shared_utils import utils_to_add +from calitp_data_analysis import utils from shared_utils import rt_dates from segment_speed_utils import helpers from segment_speed_utils.project_vars import SEGMENT_GCS @@ -73,7 +72,7 @@ def select_one_trip_per_shape(analysis_date: str): segments = select_one_trip_per_shape(analysis_date) - utils_to_add.geoparquet_gcs_export( + utils.geoparquet_gcs_export( segments, SEGMENT_GCS, f"{SEGMENT_FILE}_{analysis_date}" diff --git a/rt_segment_speeds/segment_speed_utils/array_utils.py b/rt_segment_speeds/segment_speed_utils/array_utils.py index 8568e177a..5900f7744 100644 --- a/rt_segment_speeds/segment_speed_utils/array_utils.py +++ b/rt_segment_speeds/segment_speed_utils/array_utils.py @@ -31,7 +31,7 @@ def monotonic_check(arr: np.ndarray) -> bool: """ diff_arr = np.diff(arr) - if np.all(diff_arr >= 0): + if np.all(diff_arr > 0): return True else: return False \ No newline at end of file From df99df780504f8067754a7215c118c234949c1a1 Mon Sep 17 00:00:00 2001 From: tiffanychu90 Date: Tue, 20 Feb 2024 17:41:41 +0000 Subject: [PATCH 05/15] run interpolate step again with EPSG:3310 and deploy portfolio --- portfolio/route_speeds/_toc.yml | 2 ++ ...s__name_antelope-valley-transit-authority-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_avalon-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_banning-pass-schedule.ipynb | 4 ++-- ...te_averages__name_bay-area-511-ac-transit-schedule.ipynb | 4 ++-- ..._28_route_averages__name_bay-area-511-ace-schedule.ipynb | 3 +++ ...oute_averages__name_bay-area-511-caltrain-schedule.ipynb | 4 ++-- ...rages__name_bay-area-511-capitol-corridor-schedule.ipynb | 3 +++ ...ages__name_bay-area-511-county-connection-schedule.ipynb | 4 ++-- ...ages__name_bay-area-511-dumbarton-express-schedule.ipynb | 4 ++-- ...bay-area-511-fairfield-and-suisun-transit-schedule.ipynb | 4 ++-- ...es__name_bay-area-511-golden-gate-transit-schedule.ipynb | 4 ++-- ...8_route_averages__name_bay-area-511-marin-schedule.ipynb | 4 ++-- ...28_route_averages__name_bay-area-511-muni-schedule.ipynb | 4 ++-- ...28_route_averages__name_bay-area-511-mvgo-schedule.ipynb | 4 ++-- ...oute_averages__name_bay-area-511-petaluma-schedule.ipynb | 4 ++-- ...oute_averages__name_bay-area-511-samtrans-schedule.ipynb | 4 ++-- ...name_bay-area-511-san-francisco-bay-ferry-schedule.ipynb | 4 ++-- ...es__name_bay-area-511-santa-clara-transit-schedule.ipynb | 4 ++-- ...ges__name_bay-area-511-santa-rosa-citybus-schedule.ipynb | 4 ++-- ...oute_averages__name_bay-area-511-soltrans-schedule.ipynb | 4 ++-- ...y-area-511-sonoma-marin-area-rail-transit-schedule.ipynb | 4 ++-- ...ute_averages__name_bay-area-511-tri-delta-schedule.ipynb | 4 ++-- ...ages__name_bay-area-511-tri-valley-wheels-schedule.ipynb | 4 ++-- ...ges__name_bay-area-511-union-city-transit-schedule.ipynb | 4 ++-- ..._averages__name_bay-area-511-vine-transit-schedule.ipynb | 4 ++-- ...route_averages__name_bay-area-511-westcat-schedule.ipynb | 4 ++-- ..._28_route_averages__name_beach-cities-gmv-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_bear-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_beaumont-pass-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_big-blue-bus-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_bruinbus-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_burbank-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_commerce-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_culver-city-schedule.ipynb | 4 ++-- ...oute_averages__name_desert-roadrunner-gmv-schedule.ipynb | 4 ++-- ...0__28_route_averages__name_eastern-sierra-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_elk-grove-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_etrans-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_fresno-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_get-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_humboldt-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_kings-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_la-dot-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_la-metro-bus-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_la-metro-rail-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_lake-schedule.ipynb | 4 ++-- ...28_route_averages__name_lawndale-beat-gmv-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_long-beach-schedule.ipynb | 4 ++-- ...e_averages__name_madera-county-connection-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_mendocino-schedule.ipynb | 4 ++-- ..._28_route_averages__name_monterey-salinas-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_nevada-county-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_north-county-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_norwalk-avail-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_octa-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_omnitrans-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_pasadena-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_presidigo-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_redding-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_redwood-coast-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_riverside-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_sacramento-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_san-diego-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_san-joaquin-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_santa-clarita-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_santa-cruz-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_santa-maria-schedule.ipynb | 4 ++-- ..._route_averages__name_santa-ynez-mecatran-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_sbmtd-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_slorta-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_stanrta-schedule.ipynb | 4 ++-- ...s__name_tahoe-transportation-district-gmv-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_torrance-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_turlock-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_unitrans-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_vctc-gmv-schedule.ipynb | 4 ++-- ...28_route_averages__name_victor-valley-gmv-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_visalia-schedule.ipynb | 4 ++-- .../0__28_route_averages__name_yolobus-schedule.ipynb | 4 ++-- portfolio/sites/route_speeds.yml | 6 ++++++ 81 files changed, 168 insertions(+), 154 deletions(-) create mode 100644 portfolio/route_speeds/name_bay-area-511-ace-schedule/0__28_route_averages__name_bay-area-511-ace-schedule.ipynb create mode 100644 portfolio/route_speeds/name_bay-area-511-capitol-corridor-schedule/0__28_route_averages__name_bay-area-511-capitol-corridor-schedule.ipynb diff --git a/portfolio/route_speeds/_toc.yml b/portfolio/route_speeds/_toc.yml index e69518d2b..52854df0c 100644 --- a/portfolio/route_speeds/_toc.yml +++ b/portfolio/route_speeds/_toc.yml @@ -6,7 +6,9 @@ parts: - file: name_avalon-schedule/0__28_route_averages__name_avalon-schedule.ipynb - file: name_banning-pass-schedule/0__28_route_averages__name_banning-pass-schedule.ipynb - file: name_bay-area-511-ac-transit-schedule/0__28_route_averages__name_bay-area-511-ac-transit-schedule.ipynb + - file: name_bay-area-511-ace-schedule/0__28_route_averages__name_bay-area-511-ace-schedule.ipynb - file: name_bay-area-511-caltrain-schedule/0__28_route_averages__name_bay-area-511-caltrain-schedule.ipynb + - file: name_bay-area-511-capitol-corridor-schedule/0__28_route_averages__name_bay-area-511-capitol-corridor-schedule.ipynb - file: name_bay-area-511-county-connection-schedule/0__28_route_averages__name_bay-area-511-county-connection-schedule.ipynb - file: name_bay-area-511-dumbarton-express-schedule/0__28_route_averages__name_bay-area-511-dumbarton-express-schedule.ipynb - file: name_bay-area-511-fairfield-and-suisun-transit-schedule/0__28_route_averages__name_bay-area-511-fairfield-and-suisun-transit-schedule.ipynb diff --git a/portfolio/route_speeds/name_antelope-valley-transit-authority-schedule/0__28_route_averages__name_antelope-valley-transit-authority-schedule.ipynb b/portfolio/route_speeds/name_antelope-valley-transit-authority-schedule/0__28_route_averages__name_antelope-valley-transit-authority-schedule.ipynb index 10dcd6a55..b98c99421 100644 --- a/portfolio/route_speeds/name_antelope-valley-transit-authority-schedule/0__28_route_averages__name_antelope-valley-transit-authority-schedule.ipynb +++ b/portfolio/route_speeds/name_antelope-valley-transit-authority-schedule/0__28_route_averages__name_antelope-valley-transit-authority-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5c1ec522ffb56c5219e4f5cd2da63c5a4fa542a228df3bc87831141ad70c1e93 -size 725154 +oid sha256:638c850005215e6957b077719ad9c78a6c3437993730028790103835b3137286 +size 826072 diff --git a/portfolio/route_speeds/name_avalon-schedule/0__28_route_averages__name_avalon-schedule.ipynb b/portfolio/route_speeds/name_avalon-schedule/0__28_route_averages__name_avalon-schedule.ipynb index 437ee1d1e..540f9e242 100644 --- a/portfolio/route_speeds/name_avalon-schedule/0__28_route_averages__name_avalon-schedule.ipynb +++ b/portfolio/route_speeds/name_avalon-schedule/0__28_route_averages__name_avalon-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:073a354648221d385a2da25413f4e6727e6ea818fc3c3821779c8a0dbce47ab8 -size 39961 +oid sha256:70c287057b13fe583ba1c159bec97daa2f66188d3a06227f4c6c178a8620928c +size 39994 diff --git a/portfolio/route_speeds/name_banning-pass-schedule/0__28_route_averages__name_banning-pass-schedule.ipynb b/portfolio/route_speeds/name_banning-pass-schedule/0__28_route_averages__name_banning-pass-schedule.ipynb index f51c762bd..7019e8c77 100644 --- a/portfolio/route_speeds/name_banning-pass-schedule/0__28_route_averages__name_banning-pass-schedule.ipynb +++ b/portfolio/route_speeds/name_banning-pass-schedule/0__28_route_averages__name_banning-pass-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c733bf03fa0005337f1c27ea505c250cce3ee7fe5216e0d7aa01420a7cfd60d9 -size 91082 +oid sha256:3de61e365229e8b983e7d41516b674c2f3a94b5fe120e2cae3f2e6289190becb +size 136274 diff --git a/portfolio/route_speeds/name_bay-area-511-ac-transit-schedule/0__28_route_averages__name_bay-area-511-ac-transit-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-ac-transit-schedule/0__28_route_averages__name_bay-area-511-ac-transit-schedule.ipynb index e85277b32..5d56236f5 100644 --- a/portfolio/route_speeds/name_bay-area-511-ac-transit-schedule/0__28_route_averages__name_bay-area-511-ac-transit-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-ac-transit-schedule/0__28_route_averages__name_bay-area-511-ac-transit-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8a54eb6feccdcde55a783e9a88ef0a9fce0078237785fb6ab3c0a216b3d1825b -size 4481548 +oid sha256:9aeac32ba4da1e9cd2a8ab98cd3dde534ed2ab31772f11cfcee4c09cf116e47a +size 5543193 diff --git a/portfolio/route_speeds/name_bay-area-511-ace-schedule/0__28_route_averages__name_bay-area-511-ace-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-ace-schedule/0__28_route_averages__name_bay-area-511-ace-schedule.ipynb new file mode 100644 index 000000000..e3a8d934b --- /dev/null +++ b/portfolio/route_speeds/name_bay-area-511-ace-schedule/0__28_route_averages__name_bay-area-511-ace-schedule.ipynb @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37e6b42f555c43f0fb3834d1917e7007eae215e1fd115fe8e57dd28b473eaf16 +size 33310 diff --git a/portfolio/route_speeds/name_bay-area-511-caltrain-schedule/0__28_route_averages__name_bay-area-511-caltrain-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-caltrain-schedule/0__28_route_averages__name_bay-area-511-caltrain-schedule.ipynb index 9bdcf7df4..72f98b003 100644 --- a/portfolio/route_speeds/name_bay-area-511-caltrain-schedule/0__28_route_averages__name_bay-area-511-caltrain-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-caltrain-schedule/0__28_route_averages__name_bay-area-511-caltrain-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b64c40854b08959ff36c398df1cd745b8bd95e7fb01dfb9de04b92752f5e2414 -size 88603 +oid sha256:d5db5bb030d339a31acde8d8a3c30f802d7ef3559dba2a2a477977fb0fd85a0f +size 237343 diff --git a/portfolio/route_speeds/name_bay-area-511-capitol-corridor-schedule/0__28_route_averages__name_bay-area-511-capitol-corridor-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-capitol-corridor-schedule/0__28_route_averages__name_bay-area-511-capitol-corridor-schedule.ipynb new file mode 100644 index 000000000..57bb25b68 --- /dev/null +++ b/portfolio/route_speeds/name_bay-area-511-capitol-corridor-schedule/0__28_route_averages__name_bay-area-511-capitol-corridor-schedule.ipynb @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:66e61872c489404f3e45169b3c7fef31c68435c64d2b5ea5aa851d1d90febba6 +size 38313 diff --git a/portfolio/route_speeds/name_bay-area-511-county-connection-schedule/0__28_route_averages__name_bay-area-511-county-connection-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-county-connection-schedule/0__28_route_averages__name_bay-area-511-county-connection-schedule.ipynb index ec73db47c..ce927e416 100644 --- a/portfolio/route_speeds/name_bay-area-511-county-connection-schedule/0__28_route_averages__name_bay-area-511-county-connection-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-county-connection-schedule/0__28_route_averages__name_bay-area-511-county-connection-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:952ea05d45756694ed21c82605d569730f19cedd77f52630a6367d11bb9ef59e -size 1386254 +oid sha256:e06b29cd00a75e496142343e08127c5cac54546b9a5509b3e61bf92829f457c6 +size 1690972 diff --git a/portfolio/route_speeds/name_bay-area-511-dumbarton-express-schedule/0__28_route_averages__name_bay-area-511-dumbarton-express-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-dumbarton-express-schedule/0__28_route_averages__name_bay-area-511-dumbarton-express-schedule.ipynb index 6972e71a3..fcdc59c5e 100644 --- a/portfolio/route_speeds/name_bay-area-511-dumbarton-express-schedule/0__28_route_averages__name_bay-area-511-dumbarton-express-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-dumbarton-express-schedule/0__28_route_averages__name_bay-area-511-dumbarton-express-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:99e8a37b1d544ad531009596762b49ccc4dfe42bd416585699dbebae817a2272 -size 120090 +oid sha256:995993327bf2731dea46daf8e1f0db4447844e7a5e512dcf16a73a7e41337ad4 +size 133051 diff --git a/portfolio/route_speeds/name_bay-area-511-fairfield-and-suisun-transit-schedule/0__28_route_averages__name_bay-area-511-fairfield-and-suisun-transit-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-fairfield-and-suisun-transit-schedule/0__28_route_averages__name_bay-area-511-fairfield-and-suisun-transit-schedule.ipynb index 131583d59..90893cfa0 100644 --- a/portfolio/route_speeds/name_bay-area-511-fairfield-and-suisun-transit-schedule/0__28_route_averages__name_bay-area-511-fairfield-and-suisun-transit-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-fairfield-and-suisun-transit-schedule/0__28_route_averages__name_bay-area-511-fairfield-and-suisun-transit-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bdd91ceee1ecebc82e562cddb2d431955e33e3528fe85c5dcb432e4b0dbff17c -size 273578 +oid sha256:c84bc1d95424500b36908869a738e9e5b7658c7d86a32852c2c8e6349973b8e1 +size 343339 diff --git a/portfolio/route_speeds/name_bay-area-511-golden-gate-transit-schedule/0__28_route_averages__name_bay-area-511-golden-gate-transit-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-golden-gate-transit-schedule/0__28_route_averages__name_bay-area-511-golden-gate-transit-schedule.ipynb index 39b51491d..c42501c28 100644 --- a/portfolio/route_speeds/name_bay-area-511-golden-gate-transit-schedule/0__28_route_averages__name_bay-area-511-golden-gate-transit-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-golden-gate-transit-schedule/0__28_route_averages__name_bay-area-511-golden-gate-transit-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:eaa6931fd32ea65dc5739a1bd9114b350873f0047de6a3db11343cdf60a1db94 -size 425201 +oid sha256:32816db0ed027ee75f4888e3066f1b938a2cfaccbc12e5f0ad52b4460c498c26 +size 450366 diff --git a/portfolio/route_speeds/name_bay-area-511-marin-schedule/0__28_route_averages__name_bay-area-511-marin-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-marin-schedule/0__28_route_averages__name_bay-area-511-marin-schedule.ipynb index f8d81eda6..2d61f048f 100644 --- a/portfolio/route_speeds/name_bay-area-511-marin-schedule/0__28_route_averages__name_bay-area-511-marin-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-marin-schedule/0__28_route_averages__name_bay-area-511-marin-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7902a3ede061b54d5c2ba51c2314e8dbd7dbf660e92e091f48ed97d253cb3f1a -size 864856 +oid sha256:e0b9b901637b2cb3dd5000b242a788c1864f522d526f7e239c241fb417edf4a7 +size 969777 diff --git a/portfolio/route_speeds/name_bay-area-511-muni-schedule/0__28_route_averages__name_bay-area-511-muni-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-muni-schedule/0__28_route_averages__name_bay-area-511-muni-schedule.ipynb index 7d144b65d..a7aefa263 100644 --- a/portfolio/route_speeds/name_bay-area-511-muni-schedule/0__28_route_averages__name_bay-area-511-muni-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-muni-schedule/0__28_route_averages__name_bay-area-511-muni-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8d158d77740d26b9083b376513ca76b536af04a740e1949188f70450a13d6c4c -size 2808191 +oid sha256:1297776b9380ce0d101d3018ad02ced7d503710d09ba61384587a8dc57ee856f +size 3147949 diff --git a/portfolio/route_speeds/name_bay-area-511-mvgo-schedule/0__28_route_averages__name_bay-area-511-mvgo-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-mvgo-schedule/0__28_route_averages__name_bay-area-511-mvgo-schedule.ipynb index 646420044..ea603011e 100644 --- a/portfolio/route_speeds/name_bay-area-511-mvgo-schedule/0__28_route_averages__name_bay-area-511-mvgo-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-mvgo-schedule/0__28_route_averages__name_bay-area-511-mvgo-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ec349ea4c2b724b6cf2547a6d432a97553fb82873137be05c478aa50da2a6241 -size 88914 +oid sha256:b039b61763b009be63f953c55f39ad27bc37a5cb42a0f9389cc781bf1c804725 +size 106736 diff --git a/portfolio/route_speeds/name_bay-area-511-petaluma-schedule/0__28_route_averages__name_bay-area-511-petaluma-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-petaluma-schedule/0__28_route_averages__name_bay-area-511-petaluma-schedule.ipynb index bd7b56543..64483f816 100644 --- a/portfolio/route_speeds/name_bay-area-511-petaluma-schedule/0__28_route_averages__name_bay-area-511-petaluma-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-petaluma-schedule/0__28_route_averages__name_bay-area-511-petaluma-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:14ee6e63af0a29d3cba6ead3f8a444544684eed580f652ba6c78af08454b583e -size 201608 +oid sha256:07c1346848a590e3cc60d1118cbbae0ba4ab2bf150ac5cc4f0d55a2f094e9464 +size 247613 diff --git a/portfolio/route_speeds/name_bay-area-511-samtrans-schedule/0__28_route_averages__name_bay-area-511-samtrans-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-samtrans-schedule/0__28_route_averages__name_bay-area-511-samtrans-schedule.ipynb index 386e8510a..c78262ea7 100644 --- a/portfolio/route_speeds/name_bay-area-511-samtrans-schedule/0__28_route_averages__name_bay-area-511-samtrans-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-samtrans-schedule/0__28_route_averages__name_bay-area-511-samtrans-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c6b5f9dc4b4b80aa3fd101e707b16b04372f48808e1ed7f7db85a24cdaf7b926 -size 2249835 +oid sha256:7519fabe1d3c84fabb0d6e067a56cf0eacbbc5fe685ae27caf7c2bb7c4cbcc9b +size 2699240 diff --git a/portfolio/route_speeds/name_bay-area-511-san-francisco-bay-ferry-schedule/0__28_route_averages__name_bay-area-511-san-francisco-bay-ferry-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-san-francisco-bay-ferry-schedule/0__28_route_averages__name_bay-area-511-san-francisco-bay-ferry-schedule.ipynb index a71d5a6f4..53d4e8e31 100644 --- a/portfolio/route_speeds/name_bay-area-511-san-francisco-bay-ferry-schedule/0__28_route_averages__name_bay-area-511-san-francisco-bay-ferry-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-san-francisco-bay-ferry-schedule/0__28_route_averages__name_bay-area-511-san-francisco-bay-ferry-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9aabb6943a6edf75bc7b216b1d737e1eca0d2f7ce9e4f61c67673936a17b8df4 -size 57182 +oid sha256:a381234b256db400bf76447e8be79897e33ca883093950a9a1306b5a736ed17d +size 27397 diff --git a/portfolio/route_speeds/name_bay-area-511-santa-clara-transit-schedule/0__28_route_averages__name_bay-area-511-santa-clara-transit-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-santa-clara-transit-schedule/0__28_route_averages__name_bay-area-511-santa-clara-transit-schedule.ipynb index 7a5ea507b..0065df21a 100644 --- a/portfolio/route_speeds/name_bay-area-511-santa-clara-transit-schedule/0__28_route_averages__name_bay-area-511-santa-clara-transit-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-santa-clara-transit-schedule/0__28_route_averages__name_bay-area-511-santa-clara-transit-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0ec670244590aa7f5986e8c99bf73cf3fc9a525b92b21e90bf2eb7436c9165f2 -size 2894409 +oid sha256:3391cf9e83d5ce11c8dcd4b4e477140ad90fd0c753a5875decf21d1bdc96ab94 +size 3305968 diff --git a/portfolio/route_speeds/name_bay-area-511-santa-rosa-citybus-schedule/0__28_route_averages__name_bay-area-511-santa-rosa-citybus-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-santa-rosa-citybus-schedule/0__28_route_averages__name_bay-area-511-santa-rosa-citybus-schedule.ipynb index 7c5a19a85..64293e5fc 100644 --- a/portfolio/route_speeds/name_bay-area-511-santa-rosa-citybus-schedule/0__28_route_averages__name_bay-area-511-santa-rosa-citybus-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-santa-rosa-citybus-schedule/0__28_route_averages__name_bay-area-511-santa-rosa-citybus-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:037cd8bd1dc87617b22b050219f7ba1b925835c9b77497dc7e63e79b72ebbac7 -size 399129 +oid sha256:bb59204459352f99d83e3e880eb0808177b7fdf78c2305d35adfd2c2660bf6d2 +size 446143 diff --git a/portfolio/route_speeds/name_bay-area-511-soltrans-schedule/0__28_route_averages__name_bay-area-511-soltrans-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-soltrans-schedule/0__28_route_averages__name_bay-area-511-soltrans-schedule.ipynb index e071cefe9..88b81cd2d 100644 --- a/portfolio/route_speeds/name_bay-area-511-soltrans-schedule/0__28_route_averages__name_bay-area-511-soltrans-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-soltrans-schedule/0__28_route_averages__name_bay-area-511-soltrans-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fcee56a5f23699102255fe3d1d46f8339de0196fe6ccaf8b4a0a83cce7fc2247 -size 528185 +oid sha256:68377c4cfa6127e4c19129b690cb8762184c628fed82d565723bb18933bd141f +size 690070 diff --git a/portfolio/route_speeds/name_bay-area-511-sonoma-marin-area-rail-transit-schedule/0__28_route_averages__name_bay-area-511-sonoma-marin-area-rail-transit-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-sonoma-marin-area-rail-transit-schedule/0__28_route_averages__name_bay-area-511-sonoma-marin-area-rail-transit-schedule.ipynb index 46eda2b47..eeece2804 100644 --- a/portfolio/route_speeds/name_bay-area-511-sonoma-marin-area-rail-transit-schedule/0__28_route_averages__name_bay-area-511-sonoma-marin-area-rail-transit-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-sonoma-marin-area-rail-transit-schedule/0__28_route_averages__name_bay-area-511-sonoma-marin-area-rail-transit-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7fb2d391199520a2c06ffa4de1ffe8d654deb1b9343927554dd758bc8731efb6 -size 25119 +oid sha256:dc41cb4ea5357f8ba3706df9f2c8e4528a9d3e2163876caf389449ee85f6eb7f +size 77314 diff --git a/portfolio/route_speeds/name_bay-area-511-tri-delta-schedule/0__28_route_averages__name_bay-area-511-tri-delta-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-tri-delta-schedule/0__28_route_averages__name_bay-area-511-tri-delta-schedule.ipynb index 1f5926b43..ecd0e49e1 100644 --- a/portfolio/route_speeds/name_bay-area-511-tri-delta-schedule/0__28_route_averages__name_bay-area-511-tri-delta-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-tri-delta-schedule/0__28_route_averages__name_bay-area-511-tri-delta-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e0bd68888c72514146e4d7c36ac1925b80089d9a6a0c986b1858f4eab5098e9f -size 665384 +oid sha256:fbbd3fc8fda7d28fca66534fcedacb98e24cd4bcbaad5088f5162d97c2a40c21 +size 779711 diff --git a/portfolio/route_speeds/name_bay-area-511-tri-valley-wheels-schedule/0__28_route_averages__name_bay-area-511-tri-valley-wheels-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-tri-valley-wheels-schedule/0__28_route_averages__name_bay-area-511-tri-valley-wheels-schedule.ipynb index 207273ab6..b0510cd60 100644 --- a/portfolio/route_speeds/name_bay-area-511-tri-valley-wheels-schedule/0__28_route_averages__name_bay-area-511-tri-valley-wheels-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-tri-valley-wheels-schedule/0__28_route_averages__name_bay-area-511-tri-valley-wheels-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:74a606bcb35f1ae35ce7e70cd48aabd93ae6e041eb6f96e16b27b5339c2db3b6 -size 666180 +oid sha256:f9df1414a7f25102005d3eedeaaaf8e813425e14823c799809ae664e6e086d0d +size 824796 diff --git a/portfolio/route_speeds/name_bay-area-511-union-city-transit-schedule/0__28_route_averages__name_bay-area-511-union-city-transit-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-union-city-transit-schedule/0__28_route_averages__name_bay-area-511-union-city-transit-schedule.ipynb index 3e8ded804..d40e5fc07 100644 --- a/portfolio/route_speeds/name_bay-area-511-union-city-transit-schedule/0__28_route_averages__name_bay-area-511-union-city-transit-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-union-city-transit-schedule/0__28_route_averages__name_bay-area-511-union-city-transit-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5ce58b2bbf3a15d5e94fa6de2ec44d5a7c347d6b0aa31dffb17c9ae30fe2dc6e -size 238547 +oid sha256:d0248d630550e1eedc44f9cf552375b8fe7dd59d71c16ec9df0c9a2431487f06 +size 262434 diff --git a/portfolio/route_speeds/name_bay-area-511-vine-transit-schedule/0__28_route_averages__name_bay-area-511-vine-transit-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-vine-transit-schedule/0__28_route_averages__name_bay-area-511-vine-transit-schedule.ipynb index ff28dceab..9c03b253a 100644 --- a/portfolio/route_speeds/name_bay-area-511-vine-transit-schedule/0__28_route_averages__name_bay-area-511-vine-transit-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-vine-transit-schedule/0__28_route_averages__name_bay-area-511-vine-transit-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:eaac294f68d2852e126dbd0f58f1072f81e165b554ef51f6f5c5c5fa3e64e2f9 -size 223194 +oid sha256:584fe0aed4fcd5bdf62e88626187f5d8248ef297f7d5012ab2ef4c89bacc6687 +size 344546 diff --git a/portfolio/route_speeds/name_bay-area-511-westcat-schedule/0__28_route_averages__name_bay-area-511-westcat-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-westcat-schedule/0__28_route_averages__name_bay-area-511-westcat-schedule.ipynb index b21d92a0b..f828d8aea 100644 --- a/portfolio/route_speeds/name_bay-area-511-westcat-schedule/0__28_route_averages__name_bay-area-511-westcat-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-westcat-schedule/0__28_route_averages__name_bay-area-511-westcat-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:401fe5934581d781f1f92b1ed5ef0380b3bbac2d27c14c808fea42f4ac3e941c -size 376427 +oid sha256:dcf6f1c50401ef358be3c67dba5831ab842d5a9141fc1babced0b2565b2560aa +size 543542 diff --git a/portfolio/route_speeds/name_beach-cities-gmv-schedule/0__28_route_averages__name_beach-cities-gmv-schedule.ipynb b/portfolio/route_speeds/name_beach-cities-gmv-schedule/0__28_route_averages__name_beach-cities-gmv-schedule.ipynb index 95856db22..7a79b5105 100644 --- a/portfolio/route_speeds/name_beach-cities-gmv-schedule/0__28_route_averages__name_beach-cities-gmv-schedule.ipynb +++ b/portfolio/route_speeds/name_beach-cities-gmv-schedule/0__28_route_averages__name_beach-cities-gmv-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5206c56b89bcc9c4a7f03e7f3174437aed6db4ae0c1ac8a2e35bf83d26217040 -size 109963 +oid sha256:336bc30ba03692a4f5be233d8b58cb06b2b904dda6caaa22cf0d0d46a305bff8 +size 120178 diff --git a/portfolio/route_speeds/name_bear-schedule/0__28_route_averages__name_bear-schedule.ipynb b/portfolio/route_speeds/name_bear-schedule/0__28_route_averages__name_bear-schedule.ipynb index 9fa3fbc93..68a56f4ca 100644 --- a/portfolio/route_speeds/name_bear-schedule/0__28_route_averages__name_bear-schedule.ipynb +++ b/portfolio/route_speeds/name_bear-schedule/0__28_route_averages__name_bear-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:02d96c35de58d31eb11e71e5ad3433c3346511821a3c08aa8549a04b5c176e39 -size 134409 +oid sha256:b0781dee9a33512118ee3c86225d2036eff3aa81bd7de765a4b6fe3c6a999601 +size 159109 diff --git a/portfolio/route_speeds/name_beaumont-pass-schedule/0__28_route_averages__name_beaumont-pass-schedule.ipynb b/portfolio/route_speeds/name_beaumont-pass-schedule/0__28_route_averages__name_beaumont-pass-schedule.ipynb index 757cd0b46..a1aee4e0a 100644 --- a/portfolio/route_speeds/name_beaumont-pass-schedule/0__28_route_averages__name_beaumont-pass-schedule.ipynb +++ b/portfolio/route_speeds/name_beaumont-pass-schedule/0__28_route_averages__name_beaumont-pass-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fdb18ede09267606a95a9ac44a1c39933de6f4cbc2460890e490bce95a1bf8c3 -size 203511 +oid sha256:5a94983a6fcfc0304f431317024df08d65002b15c49e751710d535734c568c49 +size 303522 diff --git a/portfolio/route_speeds/name_big-blue-bus-schedule/0__28_route_averages__name_big-blue-bus-schedule.ipynb b/portfolio/route_speeds/name_big-blue-bus-schedule/0__28_route_averages__name_big-blue-bus-schedule.ipynb index 09ea52527..78bdf431e 100644 --- a/portfolio/route_speeds/name_big-blue-bus-schedule/0__28_route_averages__name_big-blue-bus-schedule.ipynb +++ b/portfolio/route_speeds/name_big-blue-bus-schedule/0__28_route_averages__name_big-blue-bus-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0aad5a6a289f89602bb9e1a4c6c6898e8977ea1f707ab02d580a747bf39171a3 -size 813437 +oid sha256:eec1a05133f29215d8635ed50efdd9b0fc358879b3364c1c1d33220b86fca324 +size 894138 diff --git a/portfolio/route_speeds/name_bruinbus-schedule/0__28_route_averages__name_bruinbus-schedule.ipynb b/portfolio/route_speeds/name_bruinbus-schedule/0__28_route_averages__name_bruinbus-schedule.ipynb index dcb132db6..55ec5226e 100644 --- a/portfolio/route_speeds/name_bruinbus-schedule/0__28_route_averages__name_bruinbus-schedule.ipynb +++ b/portfolio/route_speeds/name_bruinbus-schedule/0__28_route_averages__name_bruinbus-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:07494c8ff02bcaf5bd66926a75bf958a8a9073145f7182ac7e9d927aa5ce7edb -size 34173 +oid sha256:6f84146696e1406dafbdda194a9c349fc1dd79ca682605706e0b0c3a3861251a +size 35797 diff --git a/portfolio/route_speeds/name_burbank-schedule/0__28_route_averages__name_burbank-schedule.ipynb b/portfolio/route_speeds/name_burbank-schedule/0__28_route_averages__name_burbank-schedule.ipynb index 0b0eca747..5236a922f 100644 --- a/portfolio/route_speeds/name_burbank-schedule/0__28_route_averages__name_burbank-schedule.ipynb +++ b/portfolio/route_speeds/name_burbank-schedule/0__28_route_averages__name_burbank-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2498ac1119e826431040043ec9f7a197817324b72bc6708a82b7d5b788e3c3bd -size 64791 +oid sha256:02030b321350141dfa1a24ff57e541e54834e114d8841b167f9be9476590e812 +size 68883 diff --git a/portfolio/route_speeds/name_commerce-schedule/0__28_route_averages__name_commerce-schedule.ipynb b/portfolio/route_speeds/name_commerce-schedule/0__28_route_averages__name_commerce-schedule.ipynb index ad2316075..49a72b441 100644 --- a/portfolio/route_speeds/name_commerce-schedule/0__28_route_averages__name_commerce-schedule.ipynb +++ b/portfolio/route_speeds/name_commerce-schedule/0__28_route_averages__name_commerce-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2b1bf25edcd0ccbc3ec26ba5eb8fe04cba6f14ec21ba830dbf62e46e16ecf0b2 -size 149011 +oid sha256:3167e91943ee24e37764c40111c77c5d0d795814b33176365269b105cdbb0aa0 +size 161873 diff --git a/portfolio/route_speeds/name_culver-city-schedule/0__28_route_averages__name_culver-city-schedule.ipynb b/portfolio/route_speeds/name_culver-city-schedule/0__28_route_averages__name_culver-city-schedule.ipynb index 024736918..437afacd7 100644 --- a/portfolio/route_speeds/name_culver-city-schedule/0__28_route_averages__name_culver-city-schedule.ipynb +++ b/portfolio/route_speeds/name_culver-city-schedule/0__28_route_averages__name_culver-city-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:71b6d26cce86a988040c02b73651b1293571a5a74d8913a830b70e54aa36b7f8 -size 402336 +oid sha256:872d8c19dd0f204979d983438c4918f79785523e3308920656ad602973b113c3 +size 484864 diff --git a/portfolio/route_speeds/name_desert-roadrunner-gmv-schedule/0__28_route_averages__name_desert-roadrunner-gmv-schedule.ipynb b/portfolio/route_speeds/name_desert-roadrunner-gmv-schedule/0__28_route_averages__name_desert-roadrunner-gmv-schedule.ipynb index d1b1919c0..8f5972a84 100644 --- a/portfolio/route_speeds/name_desert-roadrunner-gmv-schedule/0__28_route_averages__name_desert-roadrunner-gmv-schedule.ipynb +++ b/portfolio/route_speeds/name_desert-roadrunner-gmv-schedule/0__28_route_averages__name_desert-roadrunner-gmv-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:667b354c36060f2a34ab6009eff94abb8d0087e0eb1e1524da54485fc612e8b0 -size 40300 +oid sha256:e331de61a12d56e0259aaaf0a699949fb434dbfb1ba5d77dff4a8fa9a84e4a7e +size 76846 diff --git a/portfolio/route_speeds/name_eastern-sierra-schedule/0__28_route_averages__name_eastern-sierra-schedule.ipynb b/portfolio/route_speeds/name_eastern-sierra-schedule/0__28_route_averages__name_eastern-sierra-schedule.ipynb index 3f43a137b..77fab4e17 100644 --- a/portfolio/route_speeds/name_eastern-sierra-schedule/0__28_route_averages__name_eastern-sierra-schedule.ipynb +++ b/portfolio/route_speeds/name_eastern-sierra-schedule/0__28_route_averages__name_eastern-sierra-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:156fb920959e117547daa550cd0155a0808913e61a081a9c1d1c11e16155786d -size 160285 +oid sha256:a13da322c903dd5583cd9480ba300acd1d655b4eba1130a20c1ae0634d9832aa +size 281977 diff --git a/portfolio/route_speeds/name_elk-grove-schedule/0__28_route_averages__name_elk-grove-schedule.ipynb b/portfolio/route_speeds/name_elk-grove-schedule/0__28_route_averages__name_elk-grove-schedule.ipynb index f059b9b08..55dd73fb3 100644 --- a/portfolio/route_speeds/name_elk-grove-schedule/0__28_route_averages__name_elk-grove-schedule.ipynb +++ b/portfolio/route_speeds/name_elk-grove-schedule/0__28_route_averages__name_elk-grove-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8ffb8d030c384b92bcc5bf8bb74d1b689460865c3d33463046b631abaf401c35 -size 584253 +oid sha256:42ef4c6780a9727b017f1be2e245dff03cdbb8799f5a67edb5eca7c441198f76 +size 669054 diff --git a/portfolio/route_speeds/name_etrans-schedule/0__28_route_averages__name_etrans-schedule.ipynb b/portfolio/route_speeds/name_etrans-schedule/0__28_route_averages__name_etrans-schedule.ipynb index bd3cb7e93..6df04ca01 100644 --- a/portfolio/route_speeds/name_etrans-schedule/0__28_route_averages__name_etrans-schedule.ipynb +++ b/portfolio/route_speeds/name_etrans-schedule/0__28_route_averages__name_etrans-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d02339870fceb2d1b24aae0550202ae6b8052a7e37393d2ab655698a8514f0de -size 52984 +oid sha256:5216275bdd0fcdef8cc7bd7f5f855c5061a5e9933c0c3273d43874c7c912d2ca +size 64584 diff --git a/portfolio/route_speeds/name_fresno-schedule/0__28_route_averages__name_fresno-schedule.ipynb b/portfolio/route_speeds/name_fresno-schedule/0__28_route_averages__name_fresno-schedule.ipynb index 951386691..0936dc6f7 100644 --- a/portfolio/route_speeds/name_fresno-schedule/0__28_route_averages__name_fresno-schedule.ipynb +++ b/portfolio/route_speeds/name_fresno-schedule/0__28_route_averages__name_fresno-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1a24619aff96d820c2c6eff86b626d8848f993f40d9396133e91ed7d8dde42a5 -size 732992 +oid sha256:2a4eccc4e169619864928420a2bf585d2d0c2b54638fe498dc9c99a040ea2854 +size 804667 diff --git a/portfolio/route_speeds/name_get-schedule/0__28_route_averages__name_get-schedule.ipynb b/portfolio/route_speeds/name_get-schedule/0__28_route_averages__name_get-schedule.ipynb index a8cdd7868..560828011 100644 --- a/portfolio/route_speeds/name_get-schedule/0__28_route_averages__name_get-schedule.ipynb +++ b/portfolio/route_speeds/name_get-schedule/0__28_route_averages__name_get-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9e35b0d68220943686bc4161368088f0580aa6910261f81bf725eca7f69083a4 -size 691395 +oid sha256:6c886473f62ad888fa36cf0d357fc5edcce4626d48c69e19ff5283499bd679e9 +size 800043 diff --git a/portfolio/route_speeds/name_humboldt-schedule/0__28_route_averages__name_humboldt-schedule.ipynb b/portfolio/route_speeds/name_humboldt-schedule/0__28_route_averages__name_humboldt-schedule.ipynb index 7f7263564..828f921d2 100644 --- a/portfolio/route_speeds/name_humboldt-schedule/0__28_route_averages__name_humboldt-schedule.ipynb +++ b/portfolio/route_speeds/name_humboldt-schedule/0__28_route_averages__name_humboldt-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8ad4ba58a9ed1afae45f77fdf6f3818cec28c69faaae01ecc35fbf80c860e814 -size 206154 +oid sha256:ad49cb8af372912129987ec964b7e8c03ee35f7e428d4f7193b8efcf4ec467e2 +size 370166 diff --git a/portfolio/route_speeds/name_kings-schedule/0__28_route_averages__name_kings-schedule.ipynb b/portfolio/route_speeds/name_kings-schedule/0__28_route_averages__name_kings-schedule.ipynb index 5ea84ecb7..d20c910bf 100644 --- a/portfolio/route_speeds/name_kings-schedule/0__28_route_averages__name_kings-schedule.ipynb +++ b/portfolio/route_speeds/name_kings-schedule/0__28_route_averages__name_kings-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d3bad3ce403f98981c6800cc374357e851dd0f1d3392da31d318cf81b458d6b6 -size 315423 +oid sha256:bcfc7416ff794765264ad339cce55867046959463152402658d519a3e21168cf +size 374432 diff --git a/portfolio/route_speeds/name_la-dot-schedule/0__28_route_averages__name_la-dot-schedule.ipynb b/portfolio/route_speeds/name_la-dot-schedule/0__28_route_averages__name_la-dot-schedule.ipynb index b728ae825..09be68995 100644 --- a/portfolio/route_speeds/name_la-dot-schedule/0__28_route_averages__name_la-dot-schedule.ipynb +++ b/portfolio/route_speeds/name_la-dot-schedule/0__28_route_averages__name_la-dot-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ea1a286a7e097cdc06c05cb03bef720172921638d6b755c34b4f73014475ecac -size 1969641 +oid sha256:535a0a3f2fe5e0ce8c969b36df75e57c672f206c05ed92140626d08acd6a31ec +size 2201076 diff --git a/portfolio/route_speeds/name_la-metro-bus-schedule/0__28_route_averages__name_la-metro-bus-schedule.ipynb b/portfolio/route_speeds/name_la-metro-bus-schedule/0__28_route_averages__name_la-metro-bus-schedule.ipynb index a71ef699b..1f0e7f934 100644 --- a/portfolio/route_speeds/name_la-metro-bus-schedule/0__28_route_averages__name_la-metro-bus-schedule.ipynb +++ b/portfolio/route_speeds/name_la-metro-bus-schedule/0__28_route_averages__name_la-metro-bus-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f1e3604322de95c318354eb0d5849d5f2f9516937783d7fc58bca6bdc65c3629 -size 5777778 +oid sha256:fbaa5f3de045fcc15b8cf8b63a4b69f987d78d69e9e9325e4451facef11f70dd +size 6430978 diff --git a/portfolio/route_speeds/name_la-metro-rail-schedule/0__28_route_averages__name_la-metro-rail-schedule.ipynb b/portfolio/route_speeds/name_la-metro-rail-schedule/0__28_route_averages__name_la-metro-rail-schedule.ipynb index 57f889a4a..c5b3c5a6d 100644 --- a/portfolio/route_speeds/name_la-metro-rail-schedule/0__28_route_averages__name_la-metro-rail-schedule.ipynb +++ b/portfolio/route_speeds/name_la-metro-rail-schedule/0__28_route_averages__name_la-metro-rail-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4182e582d5af3fe621306ad8a3d565bdcab8eaf03c53107b234322152fbfb00e -size 208577 +oid sha256:1e1ef5819b94ebcd9f99bce78af87468d8ad6ab7feef04174125480f8c047c74 +size 258344 diff --git a/portfolio/route_speeds/name_lake-schedule/0__28_route_averages__name_lake-schedule.ipynb b/portfolio/route_speeds/name_lake-schedule/0__28_route_averages__name_lake-schedule.ipynb index 15103b511..960401734 100644 --- a/portfolio/route_speeds/name_lake-schedule/0__28_route_averages__name_lake-schedule.ipynb +++ b/portfolio/route_speeds/name_lake-schedule/0__28_route_averages__name_lake-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9ed81225fc8aea5f281de5041ba6b6638a5a76fee8e9be4af9ce98ec4453f115 -size 243472 +oid sha256:c5c1dfc8e667b622a1dc308bdc8a0261a2e32aef495bcd9ade3776935db0014d +size 358447 diff --git a/portfolio/route_speeds/name_lawndale-beat-gmv-schedule/0__28_route_averages__name_lawndale-beat-gmv-schedule.ipynb b/portfolio/route_speeds/name_lawndale-beat-gmv-schedule/0__28_route_averages__name_lawndale-beat-gmv-schedule.ipynb index d000084b4..a1c60b1ef 100644 --- a/portfolio/route_speeds/name_lawndale-beat-gmv-schedule/0__28_route_averages__name_lawndale-beat-gmv-schedule.ipynb +++ b/portfolio/route_speeds/name_lawndale-beat-gmv-schedule/0__28_route_averages__name_lawndale-beat-gmv-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a2b10b115bfc6ccc545e06dc15734f053a5feacf787ab02109ab8f7a1c9dc96a -size 36297 +oid sha256:bf3280e45624373efd0975b6d8db5cde78a12b2bfdecb469d4711003985d7b8b +size 41135 diff --git a/portfolio/route_speeds/name_long-beach-schedule/0__28_route_averages__name_long-beach-schedule.ipynb b/portfolio/route_speeds/name_long-beach-schedule/0__28_route_averages__name_long-beach-schedule.ipynb index a20b02b98..29e79e876 100644 --- a/portfolio/route_speeds/name_long-beach-schedule/0__28_route_averages__name_long-beach-schedule.ipynb +++ b/portfolio/route_speeds/name_long-beach-schedule/0__28_route_averages__name_long-beach-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6f7bb28899c9c8d0fab905e9efe3039ae752a1ac45d3b74b0a5050f32e33c683 -size 1588155 +oid sha256:85f1df5cc5e80b65fd4002712a80db6ed6698ab2d99771a76bcb4ccd9da597be +size 1795952 diff --git a/portfolio/route_speeds/name_madera-county-connection-schedule/0__28_route_averages__name_madera-county-connection-schedule.ipynb b/portfolio/route_speeds/name_madera-county-connection-schedule/0__28_route_averages__name_madera-county-connection-schedule.ipynb index 836a4b116..93dc995d5 100644 --- a/portfolio/route_speeds/name_madera-county-connection-schedule/0__28_route_averages__name_madera-county-connection-schedule.ipynb +++ b/portfolio/route_speeds/name_madera-county-connection-schedule/0__28_route_averages__name_madera-county-connection-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e111b9a995a97ee2d57c2f39062baa90faa41933a955f6e96fe2300b35dfbd8d -size 109004 +oid sha256:84ba624a7db7075520438492a4fbecb0dfbd467a5cd875581adc3e21d7ffb75e +size 220714 diff --git a/portfolio/route_speeds/name_mendocino-schedule/0__28_route_averages__name_mendocino-schedule.ipynb b/portfolio/route_speeds/name_mendocino-schedule/0__28_route_averages__name_mendocino-schedule.ipynb index b13020273..91c198b82 100644 --- a/portfolio/route_speeds/name_mendocino-schedule/0__28_route_averages__name_mendocino-schedule.ipynb +++ b/portfolio/route_speeds/name_mendocino-schedule/0__28_route_averages__name_mendocino-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:811678ac40aa9d9b40eb07e88ea8107847a9fcd137400c82f0f87a432f4843fb -size 256663 +oid sha256:ba3acb2173d335089d912ef4f64ef870fcb321a5a3b21074a3223f5c3dd6ca25 +size 334776 diff --git a/portfolio/route_speeds/name_monterey-salinas-schedule/0__28_route_averages__name_monterey-salinas-schedule.ipynb b/portfolio/route_speeds/name_monterey-salinas-schedule/0__28_route_averages__name_monterey-salinas-schedule.ipynb index 4fa220e8c..1ec1b4843 100644 --- a/portfolio/route_speeds/name_monterey-salinas-schedule/0__28_route_averages__name_monterey-salinas-schedule.ipynb +++ b/portfolio/route_speeds/name_monterey-salinas-schedule/0__28_route_averages__name_monterey-salinas-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b95cc51078792bf89cd7cc41acc1352e09f5e4249ff6116883c01bfccf555ad1 -size 1497242 +oid sha256:4fbe7a56359d93999a83ad72b913f87c64eeffdea110965071a1c96b7e93df4d +size 1694243 diff --git a/portfolio/route_speeds/name_nevada-county-schedule/0__28_route_averages__name_nevada-county-schedule.ipynb b/portfolio/route_speeds/name_nevada-county-schedule/0__28_route_averages__name_nevada-county-schedule.ipynb index 770a8d9e5..e6cbce9f3 100644 --- a/portfolio/route_speeds/name_nevada-county-schedule/0__28_route_averages__name_nevada-county-schedule.ipynb +++ b/portfolio/route_speeds/name_nevada-county-schedule/0__28_route_averages__name_nevada-county-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:81143f5b2ab535c614c630b60b088a8d19bb7a7d27d0a066b97beedeb25b7754 -size 236462 +oid sha256:b51e57cad300f5cfb846e9764e91757eccfef7fdb78c9b1567117216c85b1249 +size 331373 diff --git a/portfolio/route_speeds/name_north-county-schedule/0__28_route_averages__name_north-county-schedule.ipynb b/portfolio/route_speeds/name_north-county-schedule/0__28_route_averages__name_north-county-schedule.ipynb index c883bb6db..45c0b471c 100644 --- a/portfolio/route_speeds/name_north-county-schedule/0__28_route_averages__name_north-county-schedule.ipynb +++ b/portfolio/route_speeds/name_north-county-schedule/0__28_route_averages__name_north-county-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f6093dc65ea10f2f9f6ee71dfe795f188bebe18583c8e6437acbada7cd1af635 -size 1567699 +oid sha256:3a205fab1b23ec8c85c3e7d9f0e14478c66097092bcb67b421e69948c7c5213e +size 1876425 diff --git a/portfolio/route_speeds/name_norwalk-avail-schedule/0__28_route_averages__name_norwalk-avail-schedule.ipynb b/portfolio/route_speeds/name_norwalk-avail-schedule/0__28_route_averages__name_norwalk-avail-schedule.ipynb index 077887d4f..069160023 100644 --- a/portfolio/route_speeds/name_norwalk-avail-schedule/0__28_route_averages__name_norwalk-avail-schedule.ipynb +++ b/portfolio/route_speeds/name_norwalk-avail-schedule/0__28_route_averages__name_norwalk-avail-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ddcf3d82dedb07c157bad27d71454dbde2a974f07c89b946207fbdf1b2020e9a -size 185892 +oid sha256:fa5ebb16275dc39e180c4743bcea49275513df0b53ed9d464b5c89024b1804e3 +size 207130 diff --git a/portfolio/route_speeds/name_octa-schedule/0__28_route_averages__name_octa-schedule.ipynb b/portfolio/route_speeds/name_octa-schedule/0__28_route_averages__name_octa-schedule.ipynb index dd8dec88c..d402f15e1 100644 --- a/portfolio/route_speeds/name_octa-schedule/0__28_route_averages__name_octa-schedule.ipynb +++ b/portfolio/route_speeds/name_octa-schedule/0__28_route_averages__name_octa-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:94e8f3da75dbdd884441d601adee732b0ed47338b5b05d5d19f1fd5690e6d3ce -size 2627682 +oid sha256:383145c50ebec76b3c99a27096b177343ded936efb17618e42614cd432291c06 +size 2975290 diff --git a/portfolio/route_speeds/name_omnitrans-schedule/0__28_route_averages__name_omnitrans-schedule.ipynb b/portfolio/route_speeds/name_omnitrans-schedule/0__28_route_averages__name_omnitrans-schedule.ipynb index ee1f9c100..c008d6219 100644 --- a/portfolio/route_speeds/name_omnitrans-schedule/0__28_route_averages__name_omnitrans-schedule.ipynb +++ b/portfolio/route_speeds/name_omnitrans-schedule/0__28_route_averages__name_omnitrans-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d81552408ec414a4c3e2ae49514202c42d3ba764d48a4739784850a5f52f8ea8 -size 561198 +oid sha256:bf23df7f3c0c5781d51b2dd0977a524f328abdefaa0cb988c07133bd711f4894 +size 678118 diff --git a/portfolio/route_speeds/name_pasadena-schedule/0__28_route_averages__name_pasadena-schedule.ipynb b/portfolio/route_speeds/name_pasadena-schedule/0__28_route_averages__name_pasadena-schedule.ipynb index 65d377f15..1fb722837 100644 --- a/portfolio/route_speeds/name_pasadena-schedule/0__28_route_averages__name_pasadena-schedule.ipynb +++ b/portfolio/route_speeds/name_pasadena-schedule/0__28_route_averages__name_pasadena-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:141bd2010884a634fad8ec442d3f06ef6011c1b31adcccb21e019eeed2bed6cc -size 314088 +oid sha256:2612dd24c1516c9aaf0302d208172a20459accd524f08a3e4ef3402b4c24cccc +size 364940 diff --git a/portfolio/route_speeds/name_presidigo-schedule/0__28_route_averages__name_presidigo-schedule.ipynb b/portfolio/route_speeds/name_presidigo-schedule/0__28_route_averages__name_presidigo-schedule.ipynb index af10787fe..4417b0f15 100644 --- a/portfolio/route_speeds/name_presidigo-schedule/0__28_route_averages__name_presidigo-schedule.ipynb +++ b/portfolio/route_speeds/name_presidigo-schedule/0__28_route_averages__name_presidigo-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1a831b302d8367aa7dbcc9b2e44c5a7d2ee05d00fe070e30862fe36c22c83f78 -size 64680 +oid sha256:227ddcf491c3fb72e498fb6483956e568548e4effb73d9e0a53ce7fdb568fa3f +size 69972 diff --git a/portfolio/route_speeds/name_redding-schedule/0__28_route_averages__name_redding-schedule.ipynb b/portfolio/route_speeds/name_redding-schedule/0__28_route_averages__name_redding-schedule.ipynb index 95bb5a97a..401ecb5d2 100644 --- a/portfolio/route_speeds/name_redding-schedule/0__28_route_averages__name_redding-schedule.ipynb +++ b/portfolio/route_speeds/name_redding-schedule/0__28_route_averages__name_redding-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c930b4710cee1bc480327881a5f1444583c4e0616a5cea15ba573e3c46851431 -size 471370 +oid sha256:94fe84074fbea45bd9b956f13dca9003fb6efda4469f30a352cf54f89721dc99 +size 542886 diff --git a/portfolio/route_speeds/name_redwood-coast-schedule/0__28_route_averages__name_redwood-coast-schedule.ipynb b/portfolio/route_speeds/name_redwood-coast-schedule/0__28_route_averages__name_redwood-coast-schedule.ipynb index 78a6f0362..a20a54b4b 100644 --- a/portfolio/route_speeds/name_redwood-coast-schedule/0__28_route_averages__name_redwood-coast-schedule.ipynb +++ b/portfolio/route_speeds/name_redwood-coast-schedule/0__28_route_averages__name_redwood-coast-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:661f80316bd862a8135d56f83fbc5f2497d23ca64e77d44f836bbb781c05624a -size 196971 +oid sha256:45c7fbd3c830ed72db52ab1882b08570935da6259ed32348a94c4726817e633b +size 259025 diff --git a/portfolio/route_speeds/name_riverside-schedule/0__28_route_averages__name_riverside-schedule.ipynb b/portfolio/route_speeds/name_riverside-schedule/0__28_route_averages__name_riverside-schedule.ipynb index d5e29d642..b58857e2f 100644 --- a/portfolio/route_speeds/name_riverside-schedule/0__28_route_averages__name_riverside-schedule.ipynb +++ b/portfolio/route_speeds/name_riverside-schedule/0__28_route_averages__name_riverside-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5fc08df43c590f43b5bc80bb8ed5001e310a4f8aea13becbc11e9978e23f4970 -size 1496122 +oid sha256:16b9b0b86a0e986966e4cdbcf30830dacde7b8c037757b5921e204bebd47d61a +size 1731425 diff --git a/portfolio/route_speeds/name_sacramento-schedule/0__28_route_averages__name_sacramento-schedule.ipynb b/portfolio/route_speeds/name_sacramento-schedule/0__28_route_averages__name_sacramento-schedule.ipynb index 37828ef4e..e4e75031e 100644 --- a/portfolio/route_speeds/name_sacramento-schedule/0__28_route_averages__name_sacramento-schedule.ipynb +++ b/portfolio/route_speeds/name_sacramento-schedule/0__28_route_averages__name_sacramento-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cd5d3c9b6e3396bc4eedefa1824e86a5d957c884027c9df800d89d7d0eca7968 -size 1594690 +oid sha256:4c3f4106e604516da78a481f054b1676b4a7cb7443d49bbe2a21d1ec46c57aff +size 2011304 diff --git a/portfolio/route_speeds/name_san-diego-schedule/0__28_route_averages__name_san-diego-schedule.ipynb b/portfolio/route_speeds/name_san-diego-schedule/0__28_route_averages__name_san-diego-schedule.ipynb index 1918e08aa..d6e4353b0 100644 --- a/portfolio/route_speeds/name_san-diego-schedule/0__28_route_averages__name_san-diego-schedule.ipynb +++ b/portfolio/route_speeds/name_san-diego-schedule/0__28_route_averages__name_san-diego-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:902cc271cac375f79a9ad6908965029d89986aba6d4525f29e367ffdb738d92e -size 4339329 +oid sha256:060224ea00430a25189b237eba787747c6312b24b5ae888c48ad0061ca4f7efe +size 4866893 diff --git a/portfolio/route_speeds/name_san-joaquin-schedule/0__28_route_averages__name_san-joaquin-schedule.ipynb b/portfolio/route_speeds/name_san-joaquin-schedule/0__28_route_averages__name_san-joaquin-schedule.ipynb index d91a7a845..0608c3d7f 100644 --- a/portfolio/route_speeds/name_san-joaquin-schedule/0__28_route_averages__name_san-joaquin-schedule.ipynb +++ b/portfolio/route_speeds/name_san-joaquin-schedule/0__28_route_averages__name_san-joaquin-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:18bdc253b7f66643d8309d942164915261ea27d95d50211447fbd55fdd94033d -size 1248491 +oid sha256:caa944b2f5dfeb4d4c547230e380a7d049c409e930e8beb6c4d0a66b61b81280 +size 1597596 diff --git a/portfolio/route_speeds/name_santa-clarita-schedule/0__28_route_averages__name_santa-clarita-schedule.ipynb b/portfolio/route_speeds/name_santa-clarita-schedule/0__28_route_averages__name_santa-clarita-schedule.ipynb index 015d6d470..86fde8190 100644 --- a/portfolio/route_speeds/name_santa-clarita-schedule/0__28_route_averages__name_santa-clarita-schedule.ipynb +++ b/portfolio/route_speeds/name_santa-clarita-schedule/0__28_route_averages__name_santa-clarita-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b017c969889e9417e3e22d6741c3c9fb97ee3e47bef98bdda338bb2bc0985fd7 -size 836664 +oid sha256:000c463f841502f0aba0e5052b2644a0612fdce7d6f064c23e57f016ff4d4204 +size 1062535 diff --git a/portfolio/route_speeds/name_santa-cruz-schedule/0__28_route_averages__name_santa-cruz-schedule.ipynb b/portfolio/route_speeds/name_santa-cruz-schedule/0__28_route_averages__name_santa-cruz-schedule.ipynb index 231775623..3de231428 100644 --- a/portfolio/route_speeds/name_santa-cruz-schedule/0__28_route_averages__name_santa-cruz-schedule.ipynb +++ b/portfolio/route_speeds/name_santa-cruz-schedule/0__28_route_averages__name_santa-cruz-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dfc6be939dfeada6fd82db934de4072f6f21210dddf89122cdce44ad9e78d7e9 -size 520891 +oid sha256:aa4e0b01c4786d4fe7c9e7066b4a20d641f4e10a33a3378686483e13a10b67c1 +size 560355 diff --git a/portfolio/route_speeds/name_santa-maria-schedule/0__28_route_averages__name_santa-maria-schedule.ipynb b/portfolio/route_speeds/name_santa-maria-schedule/0__28_route_averages__name_santa-maria-schedule.ipynb index 2156f0c54..671b5ce19 100644 --- a/portfolio/route_speeds/name_santa-maria-schedule/0__28_route_averages__name_santa-maria-schedule.ipynb +++ b/portfolio/route_speeds/name_santa-maria-schedule/0__28_route_averages__name_santa-maria-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b8b251628dee9081412ea7e4f6eedd188add4e41f29cb89ea9cfe788f9635161 -size 46677 +oid sha256:fedf3312bf7f94f2972cdafbb2d9d041797ad1fd595f15bb6a69f085070cc379 +size 49548 diff --git a/portfolio/route_speeds/name_santa-ynez-mecatran-schedule/0__28_route_averages__name_santa-ynez-mecatran-schedule.ipynb b/portfolio/route_speeds/name_santa-ynez-mecatran-schedule/0__28_route_averages__name_santa-ynez-mecatran-schedule.ipynb index e56c84a0b..5282ee8c4 100644 --- a/portfolio/route_speeds/name_santa-ynez-mecatran-schedule/0__28_route_averages__name_santa-ynez-mecatran-schedule.ipynb +++ b/portfolio/route_speeds/name_santa-ynez-mecatran-schedule/0__28_route_averages__name_santa-ynez-mecatran-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:770b0bdc8876b003ad73e70be208dab1f6d800f74d067531bbd059334f5ffdda -size 70526 +oid sha256:2ef7ab9aacf344fdbbcc340e732dfaee30c9828b8df8fec973fc6fd6260880fc +size 79929 diff --git a/portfolio/route_speeds/name_sbmtd-schedule/0__28_route_averages__name_sbmtd-schedule.ipynb b/portfolio/route_speeds/name_sbmtd-schedule/0__28_route_averages__name_sbmtd-schedule.ipynb index a04b4e310..b5b7944dc 100644 --- a/portfolio/route_speeds/name_sbmtd-schedule/0__28_route_averages__name_sbmtd-schedule.ipynb +++ b/portfolio/route_speeds/name_sbmtd-schedule/0__28_route_averages__name_sbmtd-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ca19eabdef22b27727c37d0f9f04c47c306c2251246913348d541205165b20fd -size 950606 +oid sha256:699c1b17c1c098e9324f5483af34813791a6bcfe68787f0eb630858b073f6683 +size 1179784 diff --git a/portfolio/route_speeds/name_slorta-schedule/0__28_route_averages__name_slorta-schedule.ipynb b/portfolio/route_speeds/name_slorta-schedule/0__28_route_averages__name_slorta-schedule.ipynb index 821409e22..8f7a5433f 100644 --- a/portfolio/route_speeds/name_slorta-schedule/0__28_route_averages__name_slorta-schedule.ipynb +++ b/portfolio/route_speeds/name_slorta-schedule/0__28_route_averages__name_slorta-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0b5764f82a7ab840f6bbe65abbca578a360d5b6a361e03f137e3452f7d04011f -size 125808 +oid sha256:e87d5a9fc6366f7dc094c6e4e647aeab8142b904cade947021cc5c0c0fd258a7 +size 186882 diff --git a/portfolio/route_speeds/name_stanrta-schedule/0__28_route_averages__name_stanrta-schedule.ipynb b/portfolio/route_speeds/name_stanrta-schedule/0__28_route_averages__name_stanrta-schedule.ipynb index 35e5ba679..149ad64f0 100644 --- a/portfolio/route_speeds/name_stanrta-schedule/0__28_route_averages__name_stanrta-schedule.ipynb +++ b/portfolio/route_speeds/name_stanrta-schedule/0__28_route_averages__name_stanrta-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e4911d719b57a37c8b553a4c6d60e644c01041135408fd3e280b7e9a661dc9d1 -size 793092 +oid sha256:5cf1e67b4b0b6a3ce1be5d939839c38cb63c31186bda9e5f5128adb36ee35f86 +size 880353 diff --git a/portfolio/route_speeds/name_tahoe-transportation-district-gmv-schedule/0__28_route_averages__name_tahoe-transportation-district-gmv-schedule.ipynb b/portfolio/route_speeds/name_tahoe-transportation-district-gmv-schedule/0__28_route_averages__name_tahoe-transportation-district-gmv-schedule.ipynb index b283b1c26..20ab4404c 100644 --- a/portfolio/route_speeds/name_tahoe-transportation-district-gmv-schedule/0__28_route_averages__name_tahoe-transportation-district-gmv-schedule.ipynb +++ b/portfolio/route_speeds/name_tahoe-transportation-district-gmv-schedule/0__28_route_averages__name_tahoe-transportation-district-gmv-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d2e05f569abee2b66d266cb021f61f50ed9af387adbc317004af53c74e7bfc27 -size 38494 +oid sha256:155296e771a688ee12db582e585ba230f5a26f56be8fe9319dd089d4b4a547fd +size 70930 diff --git a/portfolio/route_speeds/name_torrance-schedule/0__28_route_averages__name_torrance-schedule.ipynb b/portfolio/route_speeds/name_torrance-schedule/0__28_route_averages__name_torrance-schedule.ipynb index 598446a00..2f6f8bf01 100644 --- a/portfolio/route_speeds/name_torrance-schedule/0__28_route_averages__name_torrance-schedule.ipynb +++ b/portfolio/route_speeds/name_torrance-schedule/0__28_route_averages__name_torrance-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d4ea13227df9176456dad51b252780d859498be3e67a831cbb41523638357b61 -size 501064 +oid sha256:f313e495995cf85e35b06d7d9219d7bff55f6cea97468b63d3a8be7734f73ff7 +size 588949 diff --git a/portfolio/route_speeds/name_turlock-schedule/0__28_route_averages__name_turlock-schedule.ipynb b/portfolio/route_speeds/name_turlock-schedule/0__28_route_averages__name_turlock-schedule.ipynb index 46f7b5470..f51ae7b47 100644 --- a/portfolio/route_speeds/name_turlock-schedule/0__28_route_averages__name_turlock-schedule.ipynb +++ b/portfolio/route_speeds/name_turlock-schedule/0__28_route_averages__name_turlock-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b91846edd0f6a18ce3bbaa606da2fdca88c0e50ce5b880942d08f2dc0e74b6ba -size 245052 +oid sha256:35790cf859c2d9934aafc5fac9b7d8d76460a7eaf503d8ecdc6822e4c094f52b +size 267478 diff --git a/portfolio/route_speeds/name_unitrans-schedule/0__28_route_averages__name_unitrans-schedule.ipynb b/portfolio/route_speeds/name_unitrans-schedule/0__28_route_averages__name_unitrans-schedule.ipynb index 2b29574fb..8948c9577 100644 --- a/portfolio/route_speeds/name_unitrans-schedule/0__28_route_averages__name_unitrans-schedule.ipynb +++ b/portfolio/route_speeds/name_unitrans-schedule/0__28_route_averages__name_unitrans-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:838b2991e100d9f9fa3f00fad60387b8e6e0cc33a8edcd6d50b8fad3083cbb5d -size 554215 +oid sha256:16a527f8d4fd275e22bdd2f4432f3a8379a49c9d90fa6ad7bcac6cf6bc1a1f10 +size 692276 diff --git a/portfolio/route_speeds/name_vctc-gmv-schedule/0__28_route_averages__name_vctc-gmv-schedule.ipynb b/portfolio/route_speeds/name_vctc-gmv-schedule/0__28_route_averages__name_vctc-gmv-schedule.ipynb index 3a466edc9..e0bf762ae 100644 --- a/portfolio/route_speeds/name_vctc-gmv-schedule/0__28_route_averages__name_vctc-gmv-schedule.ipynb +++ b/portfolio/route_speeds/name_vctc-gmv-schedule/0__28_route_averages__name_vctc-gmv-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4fdbf2f396322572b15ddf41ff81d43bf4f2e9ae05cde254c542fa8c1d313a01 -size 1168115 +oid sha256:6f5769835e8e6f24a5a2bdeb8951c194c15b70ccf4848d0ce0d4216607241dc4 +size 1590988 diff --git a/portfolio/route_speeds/name_victor-valley-gmv-schedule/0__28_route_averages__name_victor-valley-gmv-schedule.ipynb b/portfolio/route_speeds/name_victor-valley-gmv-schedule/0__28_route_averages__name_victor-valley-gmv-schedule.ipynb index a56779022..7c4e8b29a 100644 --- a/portfolio/route_speeds/name_victor-valley-gmv-schedule/0__28_route_averages__name_victor-valley-gmv-schedule.ipynb +++ b/portfolio/route_speeds/name_victor-valley-gmv-schedule/0__28_route_averages__name_victor-valley-gmv-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:553e6e3151af952f6c3f400d7550efc4a35415dc0b511444de92bdbac7e2ac9c -size 1172260 +oid sha256:4e5bb89826eae9ceb40acc428be51d4c40be4e88af90161e940acd517d839911 +size 1525400 diff --git a/portfolio/route_speeds/name_visalia-schedule/0__28_route_averages__name_visalia-schedule.ipynb b/portfolio/route_speeds/name_visalia-schedule/0__28_route_averages__name_visalia-schedule.ipynb index 4ab7d7fe5..0f4b3bb4c 100644 --- a/portfolio/route_speeds/name_visalia-schedule/0__28_route_averages__name_visalia-schedule.ipynb +++ b/portfolio/route_speeds/name_visalia-schedule/0__28_route_averages__name_visalia-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2fd11fe7a167f316efc967d8d01e6c7e86836c3f1bfc40d5a4c56846cc05f60f -size 368458 +oid sha256:8b65d6f9ea8bd244925b4babc56029a837856ee02dc5b90f70a575ea25e49193 +size 420974 diff --git a/portfolio/route_speeds/name_yolobus-schedule/0__28_route_averages__name_yolobus-schedule.ipynb b/portfolio/route_speeds/name_yolobus-schedule/0__28_route_averages__name_yolobus-schedule.ipynb index 47f272a35..9fb214610 100644 --- a/portfolio/route_speeds/name_yolobus-schedule/0__28_route_averages__name_yolobus-schedule.ipynb +++ b/portfolio/route_speeds/name_yolobus-schedule/0__28_route_averages__name_yolobus-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1c938e6ccb29b7cabe5419265c93121fafb6b22874cd6cdd99e731628a4a367a -size 284186 +oid sha256:d17ac7617d1a5b7e828364a3788e42a3aa4cb23aabf94c8ae7a5c8e5615a9c89 +size 389821 diff --git a/portfolio/sites/route_speeds.yml b/portfolio/sites/route_speeds.yml index 4a6eaa157..e384e531f 100644 --- a/portfolio/sites/route_speeds.yml +++ b/portfolio/sites/route_speeds.yml @@ -14,9 +14,15 @@ parts: - caption: Bay Area 511 AC Transit Schedule params: name: Bay Area 511 AC Transit Schedule + - caption: Bay Area 511 ACE Schedule + params: + name: Bay Area 511 ACE Schedule - caption: Bay Area 511 Caltrain Schedule params: name: Bay Area 511 Caltrain Schedule + - caption: Bay Area 511 Capitol Corridor Schedule + params: + name: Bay Area 511 Capitol Corridor Schedule - caption: Bay Area 511 County Connection Schedule params: name: Bay Area 511 County Connection Schedule From aace0fca88f601528a5997a649c3508a878cd8c2 Mon Sep 17 00:00:00 2001 From: tiffanychu90 Date: Tue, 20 Feb 2024 18:09:20 +0000 Subject: [PATCH 06/15] cast to epsg:3310 and rename geom columns to be clear --- Makefile | 6 +- _shared_utils/shared_utils/rt_dates.py | 14 ++- rt_segment_speeds/scripts/average_speeds.py | 13 +-- rt_segment_speeds/scripts/config.yml | 2 + .../scripts/interpolate_stop_arrival.py | 21 ++-- .../scripts/nearest_vp_to_stop.py | 110 +++++++++--------- .../scripts/stop_arrivals_to_speed.py | 1 - .../segment_speed_utils/neighbor.py | 32 +++-- 8 files changed, 112 insertions(+), 87 deletions(-) diff --git a/Makefile b/Makefile index 5d64b8d18..e45d6d4e1 100644 --- a/Makefile +++ b/Makefile @@ -11,7 +11,7 @@ build_portfolio_site: git add portfolio/$(site)/*.yml portfolio/$(site)/*.md git add portfolio/$(site)/*.ipynb git add portfolio/sites/$(site).yml - #make production_portfolio + make production_portfolio build_competitive_corridors: @@ -39,8 +39,8 @@ build_ntd_report: make build_portfolio_site build_route_speeds: - $(eval override site = route_speeds) - cd rt_segment_speeds / && make pip install -r requirements.txt && cd .. + $(eval export site = route_speeds) + cd rt_segment_speeds / && pip install -r requirements.txt && cd .. cd rt_segment_speeds/ && python deploy_portfolio_yaml.py && cd .. make build_portfolio_site diff --git a/_shared_utils/shared_utils/rt_dates.py b/_shared_utils/shared_utils/rt_dates.py index f2c572a03..939fd3a6f 100644 --- a/_shared_utils/shared_utils/rt_dates.py +++ b/_shared_utils/shared_utils/rt_dates.py @@ -3,6 +3,8 @@ GCS: gs://calitp-analytics-data/data-analyses/rt_delay/cached_views/ """ +from typing import Literal + # HQTAs and RT speedmaps DATES = { "feb2022": "2022-02-08", @@ -57,8 +59,16 @@ y2024_dates = [v for k, v in DATES.items() if k.endswith("2024")] -apr_week = [v for k, v in DATES.items() if "apr2023" in k] -oct_week = [v for k, v in DATES.items() if "oct2023" in k] + +def get_week(month: Literal["apr2023", "oct2023"], exclude_wed: bool) -> list: + if exclude_wed: + return [v for k, v in DATES.items() if month in k] + else: + return [v for k, v in DATES.items() if month in k and not k.endswith(month)] + + +apr_week = get_week(month="apr2023", exclude_wed=False) +oct_week = get_week(month="oct2023", exclude_wed=False) # Planning and Modal Advisory Committee (PMAC) - quarterly diff --git a/rt_segment_speeds/scripts/average_speeds.py b/rt_segment_speeds/scripts/average_speeds.py index 4f9b6a47a..c85d2cfef 100644 --- a/rt_segment_speeds/scripts/average_speeds.py +++ b/rt_segment_speeds/scripts/average_speeds.py @@ -366,7 +366,7 @@ def multi_day_averages(analysis_date_list: list, dict_inputs: dict): columns = col_order + ["route_name", "geometry"] ) - utils_to_add.geoparquet_gcs_export( + utils.geoparquet_gcs_export( route_dir_avg, SEGMENT_GCS, f"{ROUTE_DIR_FILE}_{time_span_str}" @@ -432,15 +432,14 @@ def stage_open_data_exports(analysis_date: str, dict_inputs: dict): logger.info(f"average rollups for {analysis_date}: {end - start}") - ''' - for month in ["apr2023", "oct2023"]: - start = datetime.datetime.now() - - one_week = [v for k, v in rt_dates.DATES.items() if month in k] + for one_week in [rt_dates.oct_week, rt_dates.apr_week]: + start = datetime.datetime.now() + multi_day_averages(one_week, STOP_SEG_DICT) end = datetime.datetime.now() logger.info(f"average rollups for {one_week}: {end - start}") - ''' + + \ No newline at end of file diff --git a/rt_segment_speeds/scripts/config.yml b/rt_segment_speeds/scripts/config.yml index e0b2349d6..a772fba51 100644 --- a/rt_segment_speeds/scripts/config.yml +++ b/rt_segment_speeds/scripts/config.yml @@ -16,6 +16,8 @@ stop_segments: rt_stop_times: stage1: "vp_usable" stage2: "nearest/nearest_vp_rt_stop_times" + stage3: "stop_arrivals_rt_stop_times" + stage4: "speeds_rt_stop_times" segments_file: "segment_options/stop_segments" road_segments: stage1: "vp_usable" diff --git a/rt_segment_speeds/scripts/interpolate_stop_arrival.py b/rt_segment_speeds/scripts/interpolate_stop_arrival.py index 48f0a23d2..06802d5f1 100644 --- a/rt_segment_speeds/scripts/interpolate_stop_arrival.py +++ b/rt_segment_speeds/scripts/interpolate_stop_arrival.py @@ -18,7 +18,7 @@ def project_points_onto_shape( stop_geometry: shapely.Point, vp_coords_trio: shapely.LineString, - shape_geometry: shapely.Geometry, + shape_geometry: shapely.LineString, timestamp_arr: np.ndarray, ) -> tuple[float]: """ @@ -26,16 +26,17 @@ def project_points_onto_shape( and the stop position onto the shape geometry. Use np.interp to find interpolated arrival time """ - stop_position = shape_geometry.project(stop_geometry) - + stop_position = vp_coords_trio.project(stop_geometry) + stop_meters = shape_geometry.project(stop_geometry) + points = [shapely.Point(p) for p in vp_coords_trio.coords] - xp = np.asarray([shape_geometry.project(p) for p in points]) + xp = np.asarray([vp_coords_trio.project(p) for p in points]) yp = timestamp_arr.astype("datetime64[s]").astype("float64") interpolated_arrival = np.interp(stop_position, xp, yp) - - return stop_position, interpolated_arrival + + return stop_meters, interpolated_arrival def interpolate_stop_arrivals( @@ -58,6 +59,7 @@ def interpolate_stop_arrivals( ) df = df.assign( + stop_geometry = df.stop_geometry.to_crs(PROJECT_CRS), vp_coords_trio = df.vp_coords_trio.to_crs(PROJECT_CRS) ) @@ -96,7 +98,8 @@ def interpolate_stop_arrivals( arrival_time = stop_arrival_series, ).astype({"arrival_time": "datetime64[s]"})[ ["trip_instance_key", "shape_array_key", - "stop_sequence", "stop_id", "stop_meters", + "stop_sequence", "stop_id", + "stop_meters", "arrival_time" ]] @@ -121,8 +124,10 @@ def interpolate_stop_arrivals( level="INFO") STOP_SEG_DICT = helpers.get_parameters(CONFIG_PATH, "stop_segments") - + RT_STOP_TIMES_DICT = helpers.get_parameters(CONFIG_PATH, "rt_stop_times") + for analysis_date in analysis_date_list: interpolate_stop_arrivals(analysis_date, STOP_SEG_DICT) + #interpolate_stop_arrivals(analysis_date, RT_STOP_TIMES_DICT) \ No newline at end of file diff --git a/rt_segment_speeds/scripts/nearest_vp_to_stop.py b/rt_segment_speeds/scripts/nearest_vp_to_stop.py index 115f2492f..e905c657d 100644 --- a/rt_segment_speeds/scripts/nearest_vp_to_stop.py +++ b/rt_segment_speeds/scripts/nearest_vp_to_stop.py @@ -2,6 +2,8 @@ Find nearest_vp_idx to the stop position using scipy KDTree. """ +import dask.dataframe as dd +import dask_geopandas as dg import datetime import geopandas as gpd import numpy as np @@ -16,6 +18,11 @@ from segment_speed_utils import helpers, neighbor from segment_speed_utils.project_vars import SEGMENT_GCS +stop_time_col_order = [ + 'trip_instance_key', 'shape_array_key', + 'stop_sequence', 'stop_id', 'stop_pair', + 'stop_primary_direction', 'geometry' +] def add_nearest_neighbor_result( gdf: gpd.GeoDataFrame, @@ -31,11 +38,11 @@ def add_nearest_neighbor_result( f"{SEGMENT_GCS}condensed/vp_condensed_{analysis_date}.parquet", columns = ["trip_instance_key", "vp_idx", "location_timestamp_local", - "geometry"] + "geometry"], ).rename(columns = { "vp_idx": "trip_vp_idx", "geometry": "trip_geometry" - }) + }).set_geometry("trip_geometry").to_crs(WGS84) gdf2 = pd.merge( gdf, @@ -52,48 +59,40 @@ def add_nearest_neighbor_result( coords_trio_series = [] # Iterate through and find the nearest_vp_idx, then surrounding trio + nearest_vp_idx = np.vectorize(neighbor.add_nearest_vp_idx)( + gdf2.vp_geometry, gdf2.stop_geometry, gdf2.vp_idx + ) + + gdf2 = gdf2.assign( + nearest_vp_idx = nearest_vp_idx, + ).drop( + columns = ["vp_idx", "vp_geometry"] + ) + for row in gdf2.itertuples(): - nearest_vp = neighbor.add_nearest_vp_idx( - getattr(row, "geometry"), - getattr(row, "stop_geometry"), - getattr(row, "vp_idx") - ) - - vp_idx_arr = np.asarray(getattr(row, "trip_vp_idx")) - timestamp_arr = np.asarray(getattr(row, "location_timestamp_local")) - coords_arr = np.asarray(getattr(row, "trip_geometry").coords) - vp_trio, time_trio, coords_trio = neighbor.add_trio( - nearest_vp, + getattr(row, "nearest_vp_idx"), np.asarray(getattr(row, "trip_vp_idx")), np.asarray(getattr(row, "location_timestamp_local")), - np.array(getattr(row, "trip_geometry").coords), + np.asarray(getattr(row, "trip_geometry").coords), ) - nearest_vp_idx_series.append(nearest_vp) - trio_line = shapely.LineString(coords_trio) vp_trio_series.append(vp_trio) time_trio_series.append(time_trio) - coords_trio_series.append(trio_line) - - - gdf2 = gdf2.assign( - nearest_vp_idx = nearest_vp_idx_series, - vp_idx_trio = vp_trio_series, - location_timestamp_local_trio = time_trio_series, - vp_coords_trio = gpd.GeoSeries(coords_trio_series, crs = WGS84) - ) - + coords_trio_series.append(shapely.LineString(coords_trio)) + drop_cols = [ - "vp_idx", "geometry", "location_timestamp_local", "trip_vp_idx", "trip_geometry" ] - gdf2 = gdf2.drop(columns = drop_cols) + gdf2 = gdf2.assign( + vp_idx_trio = vp_trio_series, + location_timestamp_local_trio = time_trio_series, + vp_coords_trio = gpd.GeoSeries(coords_trio_series, crs = WGS84) + ).drop(columns = drop_cols) - del nearest_vp_idx_series, vp_trio_series - del time_trio_series, coords_trio_series + del vp_trio_series, time_trio_series, coords_trio_series return gdf2 @@ -111,14 +110,14 @@ def nearest_neighbor_rt_stop_times( stop_times = helpers.import_scheduled_stop_times( analysis_date, - columns = ["trip_instance_key", + columns = ["trip_instance_key", "shape_array_key", "stop_sequence", "stop_id", "stop_pair", "stop_primary_direction", "geometry"], with_direction = True, get_pandas = True, crs = WGS84 - ) + ).reindex(columns = stop_time_col_order) gdf = neighbor.merge_stop_vp_for_nearest_neighbor( stop_times, analysis_date) @@ -154,45 +153,48 @@ def nearest_neighbor_shape_segments( EXPORT_FILE = dict_inputs["stage2"] SEGMENT_FILE = dict_inputs["segments_file"] - subset_trips = pd.read_parquet( + rt_trips = helpers.import_unique_vp_trips(analysis_date) + + shape_stop_combinations = pd.read_parquet( f"{SEGMENT_GCS}{SEGMENT_FILE}_{analysis_date}.parquet", - columns = ["st_trip_instance_key"] - ).st_trip_instance_key.unique() + columns = ["trip_instance_key", + "stop_id1", "stop_pair", + "st_trip_instance_key"], + filters = [[("trip_instance_key", "in", rt_trips)]] + ).rename(columns = {"stop_id1": "stop_id"}) + + subset_trips = shape_stop_combinations.st_trip_instance_key.unique() stops_to_use = helpers.import_scheduled_stop_times( analysis_date, columns = ["trip_instance_key", "shape_array_key", - "stop_sequence", "stop_id", "stop_pair", - "stop_primary_direction", - "geometry"], + "stop_sequence", "stop_id", "stop_pair", + "stop_primary_direction", "geometry"], filters = [[("trip_instance_key", "in", subset_trips)]], get_pandas = True, with_direction = True ).rename(columns = {"trip_instance_key": "st_trip_instance_key"}) - all_trips = helpers.import_scheduled_stop_times( - analysis_date, - columns = ["trip_instance_key", "shape_array_key"], - get_pandas = True, - with_direction = True - ).drop_duplicates().reset_index(drop=True) - stop_times = pd.merge( stops_to_use, - all_trips, - on = "shape_array_key", + shape_stop_combinations, + on = ["st_trip_instance_key", "stop_id", "stop_pair"], how = "inner" + ).drop( + columns = "st_trip_instance_key" + ).drop_duplicates().reset_index(drop=True).reindex( + columns = stop_time_col_order ) + del stops_to_use, shape_stop_combinations + gdf = neighbor.merge_stop_vp_for_nearest_neighbor( stop_times, analysis_date) - - del stop_times, all_trips, stops_to_use - - results = add_nearest_neighbor_result(gdf, analysis_date) - del gdf + results = add_nearest_neighbor_result(gdf, analysis_date) + del stop_times, gdf + utils.geoparquet_gcs_export( results, SEGMENT_GCS, @@ -206,7 +208,7 @@ def nearest_neighbor_shape_segments( del results return - + if __name__ == "__main__": @@ -223,5 +225,5 @@ def nearest_neighbor_shape_segments( for analysis_date in analysis_date_list: nearest_neighbor_shape_segments(analysis_date, STOP_SEG_DICT) - nearest_neighbor_rt_stop_times(analysis_date, RT_STOP_TIMES_DICT) + #nearest_neighbor_rt_stop_times(analysis_date, RT_STOP_TIMES_DICT) \ No newline at end of file diff --git a/rt_segment_speeds/scripts/stop_arrivals_to_speed.py b/rt_segment_speeds/scripts/stop_arrivals_to_speed.py index 8a4ef1789..8be7e7a8e 100644 --- a/rt_segment_speeds/scripts/stop_arrivals_to_speed.py +++ b/rt_segment_speeds/scripts/stop_arrivals_to_speed.py @@ -147,5 +147,4 @@ def calculate_speed_from_stop_arrivals( STOP_SEG_DICT = helpers.get_parameters(CONFIG_PATH, "stop_segments") for analysis_date in analysis_date_list: - calculate_speed_from_stop_arrivals(analysis_date, STOP_SEG_DICT) diff --git a/rt_segment_speeds/segment_speed_utils/neighbor.py b/rt_segment_speeds/segment_speed_utils/neighbor.py index 19d728660..69c950898 100644 --- a/rt_segment_speeds/segment_speed_utils/neighbor.py +++ b/rt_segment_speeds/segment_speed_utils/neighbor.py @@ -9,23 +9,29 @@ from segment_speed_utils import gtfs_schedule_wrangling, wrangle_shapes from segment_speed_utils.project_vars import SEGMENT_GCS +geo_const_meters = 6_371_000 * np.pi / 180 +geo_const_miles = 3_959_000 * np.pi / 180 + def nearest_snap(line: shapely.LineString, point: shapely.Point) -> int: """ Based off of this function, but we want to return the index value, rather than the point. https://github.com/UTEL-UIUC/gtfs_segments/blob/main/gtfs_segments/geom_utils.py """ - line = np.array(line.coords) - point = np.array(point.coords) + line = np.asarray(line.coords) + point = np.asarray(point.coords) tree = cKDTree(line) # np_dist is array of distances of result # np_inds is array of indices of result - np_dist, np_inds = tree.query(point, workers=-1, k=1) - + # to get approx distance in meters: geo_const * np_dist + _, np_inds = tree.query( + point, workers=-1, k=1, + #distance_upper_bound = geo_const_miles * 5 # upper bound of 5 miles + ) # We're looking for 1 nearest neighbor, so return 1st element in array return np_inds[0] - + def add_nearest_vp_idx( vp_linestring: shapely.LineString, @@ -87,9 +93,6 @@ def add_trio( coords_arr[start_pos: ] ) - elif array_length == 0: - return vp_idx_arr - # (start_idx > 0) and (array_length > 2): else: start_pos = start_idx - 1 @@ -108,17 +111,22 @@ def merge_stop_vp_for_nearest_neighbor( vp_condensed = gpd.read_parquet( f"{SEGMENT_GCS}condensed/" f"vp_nearest_neighbor_{analysis_date}.parquet", - ).drop(columns = "location_timestamp_local") - + ).drop(columns = "location_timestamp_local").to_crs(WGS84) + gdf = pd.merge( stop_times.rename( columns = { "geometry": "stop_geometry"} - ).set_geometry("stop_geometry"), + ).set_geometry("stop_geometry").to_crs(WGS84), vp_condensed.rename( - columns = {"vp_primary_direction": "stop_primary_direction"}), + columns = { + "vp_primary_direction": "stop_primary_direction", + "geometry": "vp_geometry" + }), on = ["trip_instance_key", "stop_primary_direction"], how = "inner" ) + del vp_condensed + return gdf \ No newline at end of file From 090b6993f5d5649ce1dc32a8393389c55bdf3bfc Mon Sep 17 00:00:00 2001 From: tiffanychu90 Date: Wed, 21 Feb 2024 00:53:10 +0000 Subject: [PATCH 07/15] add monotonic check and re-interpolate for all dates --- _shared_utils/shared_utils/rt_dates.py | 4 +- rt_segment_speeds/scripts/Makefile | 1 - rt_segment_speeds/scripts/average_speeds.py | 13 +- rt_segment_speeds/scripts/config.yml | 5 +- .../scripts/interpolate_stop_arrival.py | 127 +++++++++++++++--- .../scripts/stop_arrivals_to_speed.py | 36 +++-- .../segment_speed_utils/array_utils.py | 2 +- .../segment_speed_utils/wrangle_shapes.py | 42 ++---- 8 files changed, 162 insertions(+), 68 deletions(-) diff --git a/_shared_utils/shared_utils/rt_dates.py b/_shared_utils/shared_utils/rt_dates.py index 939fd3a6f..396ce1d4d 100644 --- a/_shared_utils/shared_utils/rt_dates.py +++ b/_shared_utils/shared_utils/rt_dates.py @@ -62,9 +62,9 @@ def get_week(month: Literal["apr2023", "oct2023"], exclude_wed: bool) -> list: if exclude_wed: - return [v for k, v in DATES.items() if month in k] - else: return [v for k, v in DATES.items() if month in k and not k.endswith(month)] + else: + return [v for k, v in DATES.items() if month in k] apr_week = get_week(month="apr2023", exclude_wed=False) diff --git a/rt_segment_speeds/scripts/Makefile b/rt_segment_speeds/scripts/Makefile index e8e312986..14827b7df 100644 --- a/rt_segment_speeds/scripts/Makefile +++ b/rt_segment_speeds/scripts/Makefile @@ -20,7 +20,6 @@ speeds_pipeline: make export export: - python handle_common_errors.py python average_speeds.py download_roads: diff --git a/rt_segment_speeds/scripts/average_speeds.py b/rt_segment_speeds/scripts/average_speeds.py index c85d2cfef..c08434cf9 100644 --- a/rt_segment_speeds/scripts/average_speeds.py +++ b/rt_segment_speeds/scripts/average_speeds.py @@ -20,9 +20,6 @@ OPERATOR_COLS = [ "schedule_gtfs_dataset_key", - #"name", # from schedule - #"organization_source_record_id", "organization_name", # from dim_organizations - #"base64_url", "caltrans_district", ] SHAPE_STOP_COLS = [ @@ -123,6 +120,9 @@ def concatenate_trip_segment_speeds( """ SPEED_FILE = dict_inputs["stage4"] MAX_SPEED = dict_inputs["max_speed"] + METERS_CUTOFF = dict_inputs["min_meters_elapsed"] + MAX_TRIP_SECONDS = dict_inputs["max_trip_minutes"] * 60 + MIN_TRIP_SECONDS = dict_inputs["min_trip_minutes"] * 60 df = pd.concat([ pd.read_parquet( @@ -132,7 +132,12 @@ def concatenate_trip_segment_speeds( "trip_instance_key", "speed_mph", "meters_elapsed", "sec_elapsed", "time_of_day"]), - filters = [[("speed_mph", "<=", MAX_SPEED)]] + filters = [[ + ("speed_mph", "<=", MAX_SPEED), + ("meters_elapsed", ">=", METERS_CUTOFF), + ("sec_elapsed", ">=", MIN_TRIP_SECONDS), + ("sec_elapsed", "<=", MAX_TRIP_SECONDS) + ]] ).assign( service_date = pd.to_datetime(analysis_date) ) for analysis_date in analysis_date_list], diff --git a/rt_segment_speeds/scripts/config.yml b/rt_segment_speeds/scripts/config.yml index a772fba51..6de1d3a68 100644 --- a/rt_segment_speeds/scripts/config.yml +++ b/rt_segment_speeds/scripts/config.yml @@ -11,8 +11,10 @@ stop_segments: route_dir_multi_summary: "rollup_multiday/speeds_route_dir" segments_file: "segment_options/shape_stop_segments" timestamp_col: "location_timestamp_local" - time_min_cutoff: 10 + min_trip_minutes: 10 + max_trip_minutes: 180 max_speed: 80 + min_meters_elapsed: 1609 rt_stop_times: stage1: "vp_usable" stage2: "nearest/nearest_vp_rt_stop_times" @@ -28,4 +30,3 @@ road_segments: segments_file: "road_segments" segment_identifier_cols: ["linearid", "mtfcc", "segment_sequence"] timestamp_col: "location_timestamp_local" - time_min_cutoff: 10 diff --git a/rt_segment_speeds/scripts/interpolate_stop_arrival.py b/rt_segment_speeds/scripts/interpolate_stop_arrival.py index 06802d5f1..f423cc5d8 100644 --- a/rt_segment_speeds/scripts/interpolate_stop_arrival.py +++ b/rt_segment_speeds/scripts/interpolate_stop_arrival.py @@ -10,7 +10,7 @@ from loguru import logger -from segment_speed_utils import helpers +from segment_speed_utils import array_utils, helpers, segment_calcs, wrangle_shapes from segment_speed_utils.project_vars import (SEGMENT_GCS, PROJECT_CRS, CONFIG_PATH ) @@ -30,15 +30,105 @@ def project_points_onto_shape( stop_meters = shape_geometry.project(stop_geometry) points = [shapely.Point(p) for p in vp_coords_trio.coords] - xp = np.asarray([vp_coords_trio.project(p) for p in points]) + projected_points = np.asarray([vp_coords_trio.project(p) for p in points]) - yp = timestamp_arr.astype("datetime64[s]").astype("float64") - - interpolated_arrival = np.interp(stop_position, xp, yp) + interpolated_arrival = wrangle_shapes.interpolate_stop_arrival_time( + stop_position, projected_points, timestamp_arr) return stop_meters, interpolated_arrival +def stop_and_arrival_time_arrays_by_trip( + df: pd.DataFrame, +) -> pd.DataFrame: + """ + For stops that violated the monotonically increasing condition, + set those arrival_times to NaT again. + Now, look across stops and interpolate again, using stop_meters. + """ + # Add columns with the trip's stop_meters and arrival_times + # for only correctly interpolated values + df_arrays = (df[df.arrival_time.notna()] + .groupby("trip_instance_key") + .agg({ + "stop_meters": lambda x: list(x), + "arrival_time": lambda x: list(x) + }).rename(columns = { + "stop_meters": "stop_meters_arr", + "arrival_time": "arrival_time_arr" + }).reset_index() + ) + + df2 = pd.merge( + df, + df_arrays, + on = "trip_instance_key", + how = "inner" + ) + + # Use correct values to fill in the missing arrival times + df2 = df2.assign( + arrival_time = df2.apply( + lambda x: wrangle_shapes.interpolate_stop_arrival_time( + x.stop_meters, x.stop_meters_arr, x.arrival_time_arr + ), axis=1 + ) + ).drop(columns = ["stop_meters_arr", "arrival_time_arr"]) + + return df2 + + +def enforce_monotonicity_and_interpolate_across_stops( + df: pd.DataFrame +) -> pd.DataFrame: + """ + Do a check to make sure stop arrivals are all monotonically increasing. + If it fails the check in a window of 3, and the center + position is not increasing, we will interpolate again using + surrounding observations. + """ + df = segment_calcs.convert_timestamp_to_seconds( + df, ["arrival_time"]) + + df = array_utils.rolling_window_make_array( + df, + window = 3, rolling_col = "arrival_time_sec" + ) + + # Subset to trips that have at least 1 obs that violates monotonicity + trips_with_one_false = (df.groupby("trip_instance_key") + .agg({"arrival_time_sec_monotonic": "min"}) + .reset_index() + .query('arrival_time_sec_monotonic==0') + .trip_instance_key + ) + + # Set arrival times to NaT if it's not monotonically increasing + mask = df.arrival_time_sec_monotonic == False + df.loc[mask, 'arrival_time'] = np.nan + + no_fix = df[~df.trip_instance_key.isin(trips_with_one_false)] + fix1 = df[df.trip_instance_key.isin(trips_with_one_false)] + fix1 = stop_and_arrival_time_arrays_by_trip(fix1) + + drop_me = [ + "arrival_time_sec", + "rolling_arrival_time_sec", "arrival_time_sec_monotonic" + ] + + fixed_df = pd.concat( + [no_fix, fix1], axis=0 + ).drop( + columns = drop_me + ).sort_values( + ["trip_instance_key", "stop_sequence"] + ).reset_index(drop=True) + + del no_fix, fix1, df + + return fixed_df + + def interpolate_stop_arrivals( analysis_date: str, dict_inputs: dict @@ -96,21 +186,28 @@ def interpolate_stop_arrivals( results = gdf.assign( stop_meters = stop_meters_series, arrival_time = stop_arrival_series, - ).astype({"arrival_time": "datetime64[s]"})[ - ["trip_instance_key", "shape_array_key", + )[["trip_instance_key", "shape_array_key", "stop_sequence", "stop_id", - "stop_meters", - "arrival_time" - ]] - - del gdf - + "stop_meters", "arrival_time"] + ].sort_values( + ["trip_instance_key", "stop_sequence"] + ).reset_index(drop=True) + + time1 = datetime.datetime.now() + logger.info(f"get stop arrivals {analysis_date}: {time1 - start}") + + results = enforce_monotonicity_and_interpolate_across_stops(results) + results.to_parquet( f"{SEGMENT_GCS}{STOP_ARRIVALS_FILE}.parquet" ) - + + del gdf, results + end = datetime.datetime.now() - logger.info(f"get stop arrivals {analysis_date}: {end - start}") + logger.info(f"interpolate arrivals execution time: {analysis_date}: {end - start}") + + return if __name__ == "__main__": diff --git a/rt_segment_speeds/scripts/stop_arrivals_to_speed.py b/rt_segment_speeds/scripts/stop_arrivals_to_speed.py index 8be7e7a8e..b1eb069ac 100644 --- a/rt_segment_speeds/scripts/stop_arrivals_to_speed.py +++ b/rt_segment_speeds/scripts/stop_arrivals_to_speed.py @@ -16,7 +16,7 @@ def attach_operator_natural_identifiers( ) -> pd.DataFrame: """ For each gtfs_dataset_key-shape_array_key combination, - re-attach the natural identifiers and organizational identifiers. + re-attach the natural identifiers. Return a df with all the identifiers we need during downstream aggregations, such as by route-direction. """ @@ -29,13 +29,18 @@ def attach_operator_natural_identifiers( get_pandas = True ) - # Get crosswalk from schedule_gtfs_dataset_key to organization - crosswalk = helpers.import_schedule_gtfs_key_organization_crosswalk( - analysis_date, - ).drop(columns = "itp_id") - # Add time-of-day, which is associated with trip_instance_key - time_of_day = gtfs_schedule_wrangling.get_trip_time_buckets(analysis_date) + sched_time_of_day = gtfs_schedule_wrangling.get_trip_time_buckets( + analysis_date + ).rename( + columns = {"time_of_day": "schedule_time_of_day"}) + + # If trip isn't in schedule, use vp to derive + vp_time_of_day = gtfs_schedule_wrangling.rt_time_of_day( + analysis_date + ).rename( + columns = {"time_of_day": "vp_time_of_day"}) + trip_used_for_shape = pd.read_parquet( f"{SEGMENT_GCS}segment_options/" @@ -60,16 +65,21 @@ def attach_operator_natural_identifiers( stop_pair, on = ["shape_array_key", "stop_sequence"] ).merge( - time_of_day, + sched_time_of_day, on = "trip_instance_key", - how = "inner" - ).merge( - crosswalk, - on = "schedule_gtfs_dataset_key", how = "left" + ).merge( + vp_time_of_day, + on = "trip_instance_key", + how = "inner" ) - del crosswalk, shape_identifiers, time_of_day + df_with_natural_ids = df_with_natural_ids.assign( + time_of_day = df_with_natural_ids.schedule_time_of_day.fillna( + df_with_natural_ids.vp_time_of_day) + ).drop(columns = ["schedule_time_of_day", "vp_time_of_day"]) + + del shape_identifiers, time_of_day return df_with_natural_ids diff --git a/rt_segment_speeds/segment_speed_utils/array_utils.py b/rt_segment_speeds/segment_speed_utils/array_utils.py index 5900f7744..295aae47e 100644 --- a/rt_segment_speeds/segment_speed_utils/array_utils.py +++ b/rt_segment_speeds/segment_speed_utils/array_utils.py @@ -13,7 +13,7 @@ def rolling_window_make_array( ) -> pd.DataFrame: # https://stackoverflow.com/questions/47482009/pandas-rolling-window-to-return-an-array df[f"rolling_{rolling_col}"] = [ - np.asarray(window)for window in + np.asarray(window) for window in df.groupby("trip_instance_key")[rolling_col].rolling( window = window, center=True) ] diff --git a/rt_segment_speeds/segment_speed_utils/wrangle_shapes.py b/rt_segment_speeds/segment_speed_utils/wrangle_shapes.py index 374ceff1f..6becb9703 100644 --- a/rt_segment_speeds/segment_speed_utils/wrangle_shapes.py +++ b/rt_segment_speeds/segment_speed_utils/wrangle_shapes.py @@ -10,9 +10,6 @@ * https://gis.stackexchange.com/questions/416284/splitting-multiline-or-linestring-into-equal-segments-of-particular-length-using * https://stackoverflow.com/questions/62053253/how-to-split-a-linestring-to-segments """ -import dask.array as da -import dask.dataframe as dd -import dask_geopandas as dg import geopandas as gpd import numpy as np import pandas as pd @@ -182,32 +179,17 @@ def vp_as_gdf( return vp_gdf -def project_vp_onto_segment_geometry( - vp: pd.DataFrame, - segment_gdf: gpd.GeoDataFrame, - grouping_cols: list -) -> pd.DataFrame: +def interpolate_stop_arrival_time( + stop_position: float, + shape_meters_arr: np.ndarray, + timestamp_arr: np.ndarray +) -> float: """ - Project vp onto either shape_geometry or - road_geometry. + Interpolate the arrival time given the stop meters position. + Cast datetimes into floats and cast back as datetime. """ - segment_gdf = segment_gdf.rename(columns = {"geometry": "line_geometry"}) - - vp_gdf = vp_as_gdf(vp) - - gdf = pd.merge( - vp_gdf, - segment_gdf, - on = grouping_cols, - how = "inner" - ) - - gdf = gdf.assign( - shape_meters = gdf.line_geometry.project(gdf.geometry) - ) - - vp_projected_result = gdf[ - ["vp_idx"] + grouping_cols + ["shape_meters"] - ].drop_duplicates() - - return vp_projected_result \ No newline at end of file + timestamp_arr = np.asarray(timestamp_arr).astype("datetime64[s]").astype("float64") + + return np.interp( + stop_position, np.asarray(shape_meters_arr), timestamp_arr + ).astype("datetime64[s]") \ No newline at end of file From da527c729efce0f7961944ce8e65b55fe958dedb Mon Sep 17 00:00:00 2001 From: tiffanychu90 Date: Wed, 21 Feb 2024 16:52:31 +0000 Subject: [PATCH 08/15] add filtering for speeds before averaging --- rt_segment_speeds/scripts/average_speeds.py | 6 ++---- rt_segment_speeds/scripts/stop_arrivals_to_speed.py | 6 +++--- .../segment_speed_utils/gtfs_schedule_wrangling.py | 12 +++++------- 3 files changed, 10 insertions(+), 14 deletions(-) diff --git a/rt_segment_speeds/scripts/average_speeds.py b/rt_segment_speeds/scripts/average_speeds.py index c08434cf9..8da4be4bd 100644 --- a/rt_segment_speeds/scripts/average_speeds.py +++ b/rt_segment_speeds/scripts/average_speeds.py @@ -437,7 +437,7 @@ def stage_open_data_exports(analysis_date: str, dict_inputs: dict): logger.info(f"average rollups for {analysis_date}: {end - start}") - + ''' for one_week in [rt_dates.oct_week, rt_dates.apr_week]: start = datetime.datetime.now() @@ -445,6 +445,4 @@ def stage_open_data_exports(analysis_date: str, dict_inputs: dict): end = datetime.datetime.now() logger.info(f"average rollups for {one_week}: {end - start}") - - - \ No newline at end of file + ''' \ No newline at end of file diff --git a/rt_segment_speeds/scripts/stop_arrivals_to_speed.py b/rt_segment_speeds/scripts/stop_arrivals_to_speed.py index b1eb069ac..c3786cf5c 100644 --- a/rt_segment_speeds/scripts/stop_arrivals_to_speed.py +++ b/rt_segment_speeds/scripts/stop_arrivals_to_speed.py @@ -36,7 +36,7 @@ def attach_operator_natural_identifiers( columns = {"time_of_day": "schedule_time_of_day"}) # If trip isn't in schedule, use vp to derive - vp_time_of_day = gtfs_schedule_wrangling.rt_time_of_day( + vp_time_of_day = gtfs_schedule_wrangling.get_vp_trip_time_buckets( analysis_date ).rename( columns = {"time_of_day": "vp_time_of_day"}) @@ -78,8 +78,8 @@ def attach_operator_natural_identifiers( time_of_day = df_with_natural_ids.schedule_time_of_day.fillna( df_with_natural_ids.vp_time_of_day) ).drop(columns = ["schedule_time_of_day", "vp_time_of_day"]) - - del shape_identifiers, time_of_day + + del df, stop_pair, sched_time_of_day, vp_time_of_day return df_with_natural_ids diff --git a/rt_segment_speeds/segment_speed_utils/gtfs_schedule_wrangling.py b/rt_segment_speeds/segment_speed_utils/gtfs_schedule_wrangling.py index f52cf49ee..a62150391 100644 --- a/rt_segment_speeds/segment_speed_utils/gtfs_schedule_wrangling.py +++ b/rt_segment_speeds/segment_speed_utils/gtfs_schedule_wrangling.py @@ -10,6 +10,7 @@ from segment_speed_utils import helpers, time_helpers from shared_utils import portfolio_utils, rt_utils from segment_speed_utils.project_vars import SEGMENT_GCS + def exclude_scheduled_operators( trips: pd.DataFrame, exclude_me: list = ["Amtrak Schedule", "*Flex"] @@ -168,6 +169,7 @@ def aggregate_time_of_day_to_peak_offpeak( return df3 + def get_vp_trip_time_buckets(analysis_date: str) -> pd.DataFrame: """ Assign trips to time-of-day. @@ -185,21 +187,17 @@ def get_vp_trip_time_buckets(analysis_date: str) -> pd.DataFrame: .agg({"location_timestamp_local": "min"}) .reset_index() .rename(columns={"location_timestamp_local": "min_time"}) - ) - - ddf2 = ddf2.compute() + ).compute() ddf2 = ddf2.assign( time_of_day=ddf2.apply( lambda x: rt_utils.categorize_time_of_day(x.min_time), axis=1 ) - ) + )[["time_of_day","trip_instance_key"]] - - ddf2 = ddf2[["time_of_day","trip_instance_key"]] - return ddf2 + def get_trip_time_buckets(analysis_date: str) -> pd.DataFrame: """ Assign trips to time-of-day. From ca44acc1e0df14efe8c9cc5386da6d68d853786d Mon Sep 17 00:00:00 2001 From: tiffanychu90 Date: Wed, 21 Feb 2024 16:57:01 +0000 Subject: [PATCH 09/15] notebook to check histograms of average trip speeds --- rt_segment_speeds/29_speed_cutoffs.ipynb | 225 +++++++++++++++++++++++ 1 file changed, 225 insertions(+) create mode 100644 rt_segment_speeds/29_speed_cutoffs.ipynb diff --git a/rt_segment_speeds/29_speed_cutoffs.ipynb b/rt_segment_speeds/29_speed_cutoffs.ipynb new file mode 100644 index 000000000..6386a7fdd --- /dev/null +++ b/rt_segment_speeds/29_speed_cutoffs.ipynb @@ -0,0 +1,225 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "57afbef8-a9a4-4426-a1db-22b8d2ffc017", + "metadata": {}, + "source": [ + "# Filter low trip speeds from route averages\n", + "\n", + "Look at the distribution of speeds at the trip-level.\n", + "\n", + "**Filter out sec_elapsed**\n", + "This doesn't change the distribution much, but we should do this to be consistent. To create `vp_usable`, we exclude trips whose (max-min) timestamp is <= 10 minutes. Obviously these trips could have had timestamps that met that condition and still actually produced less than 10 minutes of vp. Exclude them now.\n", + "\n", + "**Filter out extra long trips**\n", + "Notice in histograms that we have very long tails, very high `meters_elapsed` and `sec_elapsed`. We should set a maximum trip time threshold, around 3 hrs, and we'll get rid of the long tails. These long tails are what's contributing to very low speeds. " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ad537f7d-5836-4ec9-9d00-064d848975b1", + "metadata": {}, + "outputs": [], + "source": [ + "import matplotlib.pyplot as plt\n", + "import pandas as pd\n", + "\n", + "from segment_speed_utils import helpers\n", + "from segment_speed_utils.project_vars import SEGMENT_GCS, analysis_date\n", + "\n", + "dict_inputs = helpers.get_parameters(\"./scripts/config.yml\", \"stop_segments\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "14cd76cd-b3c1-4e04-9197-e72be9744d54", + "metadata": {}, + "outputs": [], + "source": [ + "analysis_date" + ] + }, + { + "cell_type": "markdown", + "id": "ca5e2061-b888-47d2-9895-675008af8b18", + "metadata": {}, + "source": [ + "## Average Trip Speeds" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "265e668b-2f70-4c12-af7d-a2ec64871708", + "metadata": {}, + "outputs": [], + "source": [ + "df = pd.read_parquet(\n", + " f\"{SEGMENT_GCS}{dict_inputs['trip_speeds_single_summary']}_{analysis_date}.parquet\"\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "9d62a4c5-a628-404a-92c5-17e565162e19", + "metadata": {}, + "outputs": [], + "source": [ + "def make_histogram(df, col): \n", + " fig, ax = plt.subplots(figsize=(3, 2))\n", + " if col == \"speed_mph\":\n", + " bins = range(0, 80, 5)\n", + " ax1 = df[col].hist(bins = bins)\n", + " ax1.set_title(\"Speed\")\n", + " elif col == \"meters_elapsed\":\n", + " bins = range(\n", + " 0, int(round(df.meters_elapsed.max(), 0)), \n", + " 1_609 * 5 # increments of 5 miles\n", + " )\n", + " ax2 = df[col].hist(bins = bins)\n", + " ax2.set_title(\"Meters\")\n", + "\n", + " elif col == \"sec_elapsed\":\n", + " bins = range(\n", + " 0, int(round(df.sec_elapsed.max(), 0)), \n", + " 60 * 30 # increments of 60 min\n", + " )\n", + " \n", + " ax3 = df[col].hist(bins = bins)\n", + " ax3.set_title(\"Seconds\")\n", + "\n", + "\n", + "def get_stats(df: pd.DataFrame):\n", + " print(\"----------- Speed -----------\")\n", + " col = \"speed_mph\"\n", + " print(df[col].describe())\n", + " print(make_histogram(df, col))\n", + " \n", + " \n", + " print(\"----------- Meters Elapsed -----------\")\n", + " col = \"meters_elapsed\"\n", + " print(df[col].describe())\n", + " make_histogram(df, col)\n", + " \n", + " print(\"----------- Seconds Elapsed -----------\")\n", + " col = \"sec_elapsed\"\n", + " print(df[col].describe())\n", + " make_histogram(df, col)\n", + " \n", + " " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "a8d7b486-86e4-4927-bf29-b1d65df54798", + "metadata": {}, + "outputs": [], + "source": [ + "get_stats(df)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "0da0d736-18b2-4bd3-afeb-6fa3aa8dad2e", + "metadata": {}, + "outputs": [], + "source": [ + "METERS_CUTOFF = 0\n", + "SEC_CUTOFF = 60 * 10\n", + "\n", + "new_df = df[\n", + " (df.meters_elapsed >= METERS_CUTOFF) & \n", + " (df.sec_elapsed >= SEC_CUTOFF)\n", + "]\n", + "\n", + "new_df.shape, df.shape, len(df) - len(new_df)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "2a8fa256-70a9-4fcd-a8f8-1129b89b230d", + "metadata": {}, + "outputs": [], + "source": [ + "get_stats(new_df)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "05ef24ce-bd4c-41ad-a51a-53ecb8e40dfd", + "metadata": {}, + "outputs": [], + "source": [ + "METERS_CUTOFF = 1_609 # at least 1 mile\n", + "SEC_CUTOFF = 60 * 10\n", + "SEC_MAX = 60 * 180\n", + "\n", + "new_df = df[\n", + " (df.meters_elapsed >= METERS_CUTOFF) & \n", + " (df.sec_elapsed >= SEC_CUTOFF) & \n", + " (df.sec_elapsed <= SEC_MAX)\n", + "]\n", + "\n", + "new_df.shape, df.shape, len(df) - len(new_df)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "5f189d05-9a42-4310-ad0d-500f589c1bb2", + "metadata": {}, + "outputs": [], + "source": [ + "get_stats(new_df)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "4976f99a-bf76-45d9-a965-2e0b7904a26e", + "metadata": {}, + "outputs": [], + "source": [ + "# Ok, now low speeds are much better...we have fewer of them\n", + "new_df[new_df.speed_mph <=5].speed_mph.hist(bins = range(0, 6, 1))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "1704b39b-be48-4836-adf5-8fd52d00c434", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.13" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} From 61f734dfe478995019b54c0f52cb64f6e6b34a4b Mon Sep 17 00:00:00 2001 From: tiffanychu90 Date: Wed, 21 Feb 2024 17:50:22 +0000 Subject: [PATCH 10/15] deploy portfolio, facet by route and direction --- portfolio/route_speeds/_toc.yml | 7 ------- ...pe-valley-transit-authority-schedule.ipynb | 4 ++-- ...route_averages__name_avalon-schedule.ipynb | 4 ++-- ...averages__name_banning-pass-schedule.ipynb | 4 ++-- ...ame_bay-area-511-ac-transit-schedule.ipynb | 4 ++-- ...ages__name_bay-area-511-ace-schedule.ipynb | 4 ++-- ..._name_bay-area-511-caltrain-schedule.ipynb | 4 ++-- ...y-area-511-capitol-corridor-schedule.ipynb | 4 ++-- ...-area-511-county-connection-schedule.ipynb | 4 ++-- ...-area-511-dumbarton-express-schedule.ipynb | 4 ++-- ...airfield-and-suisun-transit-schedule.ipynb | 4 ++-- ...rea-511-golden-gate-transit-schedule.ipynb | 4 ++-- ...es__name_bay-area-511-marin-schedule.ipynb | 4 ++-- ...ges__name_bay-area-511-muni-schedule.ipynb | 4 ++-- ...ges__name_bay-area-511-mvgo-schedule.ipynb | 4 ++-- ..._name_bay-area-511-petaluma-schedule.ipynb | 3 --- ..._name_bay-area-511-samtrans-schedule.ipynb | 4 ++-- ...511-san-francisco-bay-ferry-schedule.ipynb | 4 ++-- ...rea-511-santa-clara-transit-schedule.ipynb | 4 ++-- ...area-511-santa-rosa-citybus-schedule.ipynb | 3 --- ..._name_bay-area-511-soltrans-schedule.ipynb | 4 ++-- ...oma-marin-area-rail-transit-schedule.ipynb | 4 ++-- ...name_bay-area-511-tri-delta-schedule.ipynb | 4 ++-- ...-area-511-tri-valley-wheels-schedule.ipynb | 4 ++-- ...area-511-union-city-transit-schedule.ipynb | 3 --- ...e_bay-area-511-vine-transit-schedule.ipynb | 4 ++-- ...__name_bay-area-511-westcat-schedule.ipynb | 4 ++-- ...ages__name_beach-cities-gmv-schedule.ipynb | 4 ++-- ...8_route_averages__name_bear-schedule.ipynb | 3 --- ...verages__name_beaumont-pass-schedule.ipynb | 4 ++-- ...averages__name_big-blue-bus-schedule.ipynb | 4 ++-- ...ute_averages__name_bruinbus-schedule.ipynb | 4 ++-- ...oute_averages__name_burbank-schedule.ipynb | 4 ++-- ...ute_averages__name_commerce-schedule.ipynb | 4 ++-- ..._averages__name_culver-city-schedule.ipynb | 4 ++-- ..._name_desert-roadrunner-gmv-schedule.ipynb | 4 ++-- ...erages__name_eastern-sierra-schedule.ipynb | 4 ++-- ...te_averages__name_elk-grove-schedule.ipynb | 4 ++-- ...route_averages__name_etrans-schedule.ipynb | 3 --- ...route_averages__name_fresno-schedule.ipynb | 4 ++-- ...28_route_averages__name_get-schedule.ipynb | 4 ++-- ...ute_averages__name_humboldt-schedule.ipynb | 4 ++-- ..._route_averages__name_kings-schedule.ipynb | 4 ++-- ...route_averages__name_la-dot-schedule.ipynb | 4 ++-- ...averages__name_la-metro-bus-schedule.ipynb | 4 ++-- ...verages__name_la-metro-rail-schedule.ipynb | 4 ++-- ...8_route_averages__name_lake-schedule.ipynb | 4 ++-- ...ges__name_lawndale-beat-gmv-schedule.ipynb | 4 ++-- ...e_averages__name_long-beach-schedule.ipynb | 4 ++-- ...me_madera-county-connection-schedule.ipynb | 4 ++-- ...te_averages__name_mendocino-schedule.ipynb | 4 ++-- ...ages__name_monterey-salinas-schedule.ipynb | 4 ++-- ...verages__name_nevada-county-schedule.ipynb | 4 ++-- ...averages__name_north-county-schedule.ipynb | 4 ++-- ...verages__name_norwalk-avail-schedule.ipynb | 4 ++-- ...8_route_averages__name_octa-schedule.ipynb | 4 ++-- ...te_averages__name_omnitrans-schedule.ipynb | 4 ++-- ...ute_averages__name_pasadena-schedule.ipynb | 3 --- ...te_averages__name_presidigo-schedule.ipynb | 4 ++-- ...oute_averages__name_redding-schedule.ipynb | 4 ++-- ...verages__name_redwood-coast-schedule.ipynb | 4 ++-- ...te_averages__name_riverside-schedule.ipynb | 4 ++-- ...e_averages__name_sacramento-schedule.ipynb | 4 ++-- ...te_averages__name_san-diego-schedule.ipynb | 4 ++-- ..._averages__name_san-joaquin-schedule.ipynb | 4 ++-- ...verages__name_santa-clarita-schedule.ipynb | 4 ++-- ...e_averages__name_santa-cruz-schedule.ipynb | 4 ++-- ..._averages__name_santa-maria-schedule.ipynb | 4 ++-- ...s__name_santa-ynez-mecatran-schedule.ipynb | 4 ++-- ..._route_averages__name_sbmtd-schedule.ipynb | 4 ++-- ...route_averages__name_slorta-schedule.ipynb | 4 ++-- ...oute_averages__name_stanrta-schedule.ipynb | 4 ++-- ...transportation-district-gmv-schedule.ipynb | 4 ++-- ...ute_averages__name_torrance-schedule.ipynb | 4 ++-- ...oute_averages__name_turlock-schedule.ipynb | 4 ++-- ...ute_averages__name_unitrans-schedule.ipynb | 3 --- ...ute_averages__name_vctc-gmv-schedule.ipynb | 4 ++-- ...ges__name_victor-valley-gmv-schedule.ipynb | 4 ++-- ...oute_averages__name_visalia-schedule.ipynb | 4 ++-- ...oute_averages__name_yolobus-schedule.ipynb | 4 ++-- portfolio/sites/route_speeds.yml | 21 ------------------- rt_segment_speeds/28_route_averages.ipynb | 21 ++++++++++++------- .../segment_speed_utils/project_vars.py | 16 ++++---------- 83 files changed, 162 insertions(+), 212 deletions(-) delete mode 100644 portfolio/route_speeds/name_bay-area-511-petaluma-schedule/0__28_route_averages__name_bay-area-511-petaluma-schedule.ipynb delete mode 100644 portfolio/route_speeds/name_bay-area-511-santa-rosa-citybus-schedule/0__28_route_averages__name_bay-area-511-santa-rosa-citybus-schedule.ipynb delete mode 100644 portfolio/route_speeds/name_bay-area-511-union-city-transit-schedule/0__28_route_averages__name_bay-area-511-union-city-transit-schedule.ipynb delete mode 100644 portfolio/route_speeds/name_bear-schedule/0__28_route_averages__name_bear-schedule.ipynb delete mode 100644 portfolio/route_speeds/name_etrans-schedule/0__28_route_averages__name_etrans-schedule.ipynb delete mode 100644 portfolio/route_speeds/name_pasadena-schedule/0__28_route_averages__name_pasadena-schedule.ipynb delete mode 100644 portfolio/route_speeds/name_unitrans-schedule/0__28_route_averages__name_unitrans-schedule.ipynb diff --git a/portfolio/route_speeds/_toc.yml b/portfolio/route_speeds/_toc.yml index 52854df0c..c0626c36e 100644 --- a/portfolio/route_speeds/_toc.yml +++ b/portfolio/route_speeds/_toc.yml @@ -16,20 +16,16 @@ parts: - file: name_bay-area-511-mvgo-schedule/0__28_route_averages__name_bay-area-511-mvgo-schedule.ipynb - file: name_bay-area-511-marin-schedule/0__28_route_averages__name_bay-area-511-marin-schedule.ipynb - file: name_bay-area-511-muni-schedule/0__28_route_averages__name_bay-area-511-muni-schedule.ipynb - - file: name_bay-area-511-petaluma-schedule/0__28_route_averages__name_bay-area-511-petaluma-schedule.ipynb - file: name_bay-area-511-samtrans-schedule/0__28_route_averages__name_bay-area-511-samtrans-schedule.ipynb - file: name_bay-area-511-san-francisco-bay-ferry-schedule/0__28_route_averages__name_bay-area-511-san-francisco-bay-ferry-schedule.ipynb - file: name_bay-area-511-santa-clara-transit-schedule/0__28_route_averages__name_bay-area-511-santa-clara-transit-schedule.ipynb - - file: name_bay-area-511-santa-rosa-citybus-schedule/0__28_route_averages__name_bay-area-511-santa-rosa-citybus-schedule.ipynb - file: name_bay-area-511-soltrans-schedule/0__28_route_averages__name_bay-area-511-soltrans-schedule.ipynb - file: name_bay-area-511-sonoma-marin-area-rail-transit-schedule/0__28_route_averages__name_bay-area-511-sonoma-marin-area-rail-transit-schedule.ipynb - file: name_bay-area-511-tri-delta-schedule/0__28_route_averages__name_bay-area-511-tri-delta-schedule.ipynb - file: name_bay-area-511-tri-valley-wheels-schedule/0__28_route_averages__name_bay-area-511-tri-valley-wheels-schedule.ipynb - - file: name_bay-area-511-union-city-transit-schedule/0__28_route_averages__name_bay-area-511-union-city-transit-schedule.ipynb - file: name_bay-area-511-vine-transit-schedule/0__28_route_averages__name_bay-area-511-vine-transit-schedule.ipynb - file: name_bay-area-511-westcat-schedule/0__28_route_averages__name_bay-area-511-westcat-schedule.ipynb - file: name_beach-cities-gmv-schedule/0__28_route_averages__name_beach-cities-gmv-schedule.ipynb - - file: name_bear-schedule/0__28_route_averages__name_bear-schedule.ipynb - file: name_beaumont-pass-schedule/0__28_route_averages__name_beaumont-pass-schedule.ipynb - file: name_big-blue-bus-schedule/0__28_route_averages__name_big-blue-bus-schedule.ipynb - file: name_bruinbus-schedule/0__28_route_averages__name_bruinbus-schedule.ipynb @@ -57,7 +53,6 @@ parts: - file: name_norwalk-avail-schedule/0__28_route_averages__name_norwalk-avail-schedule.ipynb - file: name_octa-schedule/0__28_route_averages__name_octa-schedule.ipynb - file: name_omnitrans-schedule/0__28_route_averages__name_omnitrans-schedule.ipynb - - file: name_pasadena-schedule/0__28_route_averages__name_pasadena-schedule.ipynb - file: name_presidigo-schedule/0__28_route_averages__name_presidigo-schedule.ipynb - file: name_redding-schedule/0__28_route_averages__name_redding-schedule.ipynb - file: name_redwood-coast-schedule/0__28_route_averages__name_redwood-coast-schedule.ipynb @@ -75,10 +70,8 @@ parts: - file: name_tahoe-transportation-district-gmv-schedule/0__28_route_averages__name_tahoe-transportation-district-gmv-schedule.ipynb - file: name_torrance-schedule/0__28_route_averages__name_torrance-schedule.ipynb - file: name_turlock-schedule/0__28_route_averages__name_turlock-schedule.ipynb - - file: name_unitrans-schedule/0__28_route_averages__name_unitrans-schedule.ipynb - file: name_vctc-gmv-schedule/0__28_route_averages__name_vctc-gmv-schedule.ipynb - file: name_victor-valley-gmv-schedule/0__28_route_averages__name_victor-valley-gmv-schedule.ipynb - file: name_visalia-schedule/0__28_route_averages__name_visalia-schedule.ipynb - file: name_yolobus-schedule/0__28_route_averages__name_yolobus-schedule.ipynb - - file: name_etrans-schedule/0__28_route_averages__name_etrans-schedule.ipynb root: README diff --git a/portfolio/route_speeds/name_antelope-valley-transit-authority-schedule/0__28_route_averages__name_antelope-valley-transit-authority-schedule.ipynb b/portfolio/route_speeds/name_antelope-valley-transit-authority-schedule/0__28_route_averages__name_antelope-valley-transit-authority-schedule.ipynb index b98c99421..c64854679 100644 --- a/portfolio/route_speeds/name_antelope-valley-transit-authority-schedule/0__28_route_averages__name_antelope-valley-transit-authority-schedule.ipynb +++ b/portfolio/route_speeds/name_antelope-valley-transit-authority-schedule/0__28_route_averages__name_antelope-valley-transit-authority-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:638c850005215e6957b077719ad9c78a6c3437993730028790103835b3137286 -size 826072 +oid sha256:4b68cd45c0241556ffbc785dd9d510a396fb5a29f03799710375afb08a4de5c9 +size 310194 diff --git a/portfolio/route_speeds/name_avalon-schedule/0__28_route_averages__name_avalon-schedule.ipynb b/portfolio/route_speeds/name_avalon-schedule/0__28_route_averages__name_avalon-schedule.ipynb index 540f9e242..29e592d06 100644 --- a/portfolio/route_speeds/name_avalon-schedule/0__28_route_averages__name_avalon-schedule.ipynb +++ b/portfolio/route_speeds/name_avalon-schedule/0__28_route_averages__name_avalon-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:70c287057b13fe583ba1c159bec97daa2f66188d3a06227f4c6c178a8620928c -size 39994 +oid sha256:505d09441eb8d6294f451f05329691539d9808da46623211c513454221dbf0c1 +size 39286 diff --git a/portfolio/route_speeds/name_banning-pass-schedule/0__28_route_averages__name_banning-pass-schedule.ipynb b/portfolio/route_speeds/name_banning-pass-schedule/0__28_route_averages__name_banning-pass-schedule.ipynb index 7019e8c77..f759c0d11 100644 --- a/portfolio/route_speeds/name_banning-pass-schedule/0__28_route_averages__name_banning-pass-schedule.ipynb +++ b/portfolio/route_speeds/name_banning-pass-schedule/0__28_route_averages__name_banning-pass-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3de61e365229e8b983e7d41516b674c2f3a94b5fe120e2cae3f2e6289190becb -size 136274 +oid sha256:5ff5ba25c483429640a85a0eed1c1a720f69fc2679709246759709f6fe1979ee +size 118105 diff --git a/portfolio/route_speeds/name_bay-area-511-ac-transit-schedule/0__28_route_averages__name_bay-area-511-ac-transit-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-ac-transit-schedule/0__28_route_averages__name_bay-area-511-ac-transit-schedule.ipynb index 5d56236f5..e403fd6ad 100644 --- a/portfolio/route_speeds/name_bay-area-511-ac-transit-schedule/0__28_route_averages__name_bay-area-511-ac-transit-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-ac-transit-schedule/0__28_route_averages__name_bay-area-511-ac-transit-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9aeac32ba4da1e9cd2a8ab98cd3dde534ed2ab31772f11cfcee4c09cf116e47a -size 5543193 +oid sha256:df4a2c55caf7aacd3fa84566059ac249338b292f7e9b3d16c27f9d4d7f100071 +size 202890 diff --git a/portfolio/route_speeds/name_bay-area-511-ace-schedule/0__28_route_averages__name_bay-area-511-ace-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-ace-schedule/0__28_route_averages__name_bay-area-511-ace-schedule.ipynb index e3a8d934b..0f0dc22ff 100644 --- a/portfolio/route_speeds/name_bay-area-511-ace-schedule/0__28_route_averages__name_bay-area-511-ace-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-ace-schedule/0__28_route_averages__name_bay-area-511-ace-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:37e6b42f555c43f0fb3834d1917e7007eae215e1fd115fe8e57dd28b473eaf16 -size 33310 +oid sha256:ae546115580792c963fb8ae8f70d6dfa0cf3c863ac45ad50828e27f96df930e9 +size 33335 diff --git a/portfolio/route_speeds/name_bay-area-511-caltrain-schedule/0__28_route_averages__name_bay-area-511-caltrain-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-caltrain-schedule/0__28_route_averages__name_bay-area-511-caltrain-schedule.ipynb index 72f98b003..e8c0396db 100644 --- a/portfolio/route_speeds/name_bay-area-511-caltrain-schedule/0__28_route_averages__name_bay-area-511-caltrain-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-caltrain-schedule/0__28_route_averages__name_bay-area-511-caltrain-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d5db5bb030d339a31acde8d8a3c30f802d7ef3559dba2a2a477977fb0fd85a0f -size 237343 +oid sha256:e31f44ee207204a229a974c0738926bc58a819f54e8508c212ecb13a233f41ac +size 217399 diff --git a/portfolio/route_speeds/name_bay-area-511-capitol-corridor-schedule/0__28_route_averages__name_bay-area-511-capitol-corridor-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-capitol-corridor-schedule/0__28_route_averages__name_bay-area-511-capitol-corridor-schedule.ipynb index 57bb25b68..6e6efe07f 100644 --- a/portfolio/route_speeds/name_bay-area-511-capitol-corridor-schedule/0__28_route_averages__name_bay-area-511-capitol-corridor-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-capitol-corridor-schedule/0__28_route_averages__name_bay-area-511-capitol-corridor-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:66e61872c489404f3e45169b3c7fef31c68435c64d2b5ea5aa851d1d90febba6 -size 38313 +oid sha256:ae62f3a3599f814ebc0fcb8d7eb49b5dc98efed9569e2df72f1767304b122ad6 +size 38348 diff --git a/portfolio/route_speeds/name_bay-area-511-county-connection-schedule/0__28_route_averages__name_bay-area-511-county-connection-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-county-connection-schedule/0__28_route_averages__name_bay-area-511-county-connection-schedule.ipynb index ce927e416..fb75dec07 100644 --- a/portfolio/route_speeds/name_bay-area-511-county-connection-schedule/0__28_route_averages__name_bay-area-511-county-connection-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-county-connection-schedule/0__28_route_averages__name_bay-area-511-county-connection-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e06b29cd00a75e496142343e08127c5cac54546b9a5509b3e61bf92829f457c6 -size 1690972 +oid sha256:68770b4979cb24eb0f46a67a6e676bf5f48f6317dfea4843a363a9f268676e4b +size 240453 diff --git a/portfolio/route_speeds/name_bay-area-511-dumbarton-express-schedule/0__28_route_averages__name_bay-area-511-dumbarton-express-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-dumbarton-express-schedule/0__28_route_averages__name_bay-area-511-dumbarton-express-schedule.ipynb index fcdc59c5e..b7b8044eb 100644 --- a/portfolio/route_speeds/name_bay-area-511-dumbarton-express-schedule/0__28_route_averages__name_bay-area-511-dumbarton-express-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-dumbarton-express-schedule/0__28_route_averages__name_bay-area-511-dumbarton-express-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:995993327bf2731dea46daf8e1f0db4447844e7a5e512dcf16a73a7e41337ad4 -size 133051 +oid sha256:d95336f6437a2ca5eff10141570988dcadbf72fac5ccee7ce6dd97d1aa30b30e +size 132937 diff --git a/portfolio/route_speeds/name_bay-area-511-fairfield-and-suisun-transit-schedule/0__28_route_averages__name_bay-area-511-fairfield-and-suisun-transit-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-fairfield-and-suisun-transit-schedule/0__28_route_averages__name_bay-area-511-fairfield-and-suisun-transit-schedule.ipynb index 90893cfa0..f0acb0985 100644 --- a/portfolio/route_speeds/name_bay-area-511-fairfield-and-suisun-transit-schedule/0__28_route_averages__name_bay-area-511-fairfield-and-suisun-transit-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-fairfield-and-suisun-transit-schedule/0__28_route_averages__name_bay-area-511-fairfield-and-suisun-transit-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c84bc1d95424500b36908869a738e9e5b7658c7d86a32852c2c8e6349973b8e1 -size 343339 +oid sha256:b818a21c3e191db4898bb8f3ecf1d8e7507842afc67923a9313fbab422efa021 +size 75769 diff --git a/portfolio/route_speeds/name_bay-area-511-golden-gate-transit-schedule/0__28_route_averages__name_bay-area-511-golden-gate-transit-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-golden-gate-transit-schedule/0__28_route_averages__name_bay-area-511-golden-gate-transit-schedule.ipynb index c42501c28..5e43bd7df 100644 --- a/portfolio/route_speeds/name_bay-area-511-golden-gate-transit-schedule/0__28_route_averages__name_bay-area-511-golden-gate-transit-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-golden-gate-transit-schedule/0__28_route_averages__name_bay-area-511-golden-gate-transit-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:32816db0ed027ee75f4888e3066f1b938a2cfaccbc12e5f0ad52b4460c498c26 -size 450366 +oid sha256:a335a9137a7a509b3fbef25de0e858988b37fe2175caf72c1e27ea962e040e4a +size 310237 diff --git a/portfolio/route_speeds/name_bay-area-511-marin-schedule/0__28_route_averages__name_bay-area-511-marin-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-marin-schedule/0__28_route_averages__name_bay-area-511-marin-schedule.ipynb index 2d61f048f..7fa730aad 100644 --- a/portfolio/route_speeds/name_bay-area-511-marin-schedule/0__28_route_averages__name_bay-area-511-marin-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-marin-schedule/0__28_route_averages__name_bay-area-511-marin-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e0b9b901637b2cb3dd5000b242a788c1864f522d526f7e239c241fb417edf4a7 -size 969777 +oid sha256:81eadde6a327f85dcd52ece2f20f1e543b1e3bb6300362da6b7a64665274bb02 +size 312606 diff --git a/portfolio/route_speeds/name_bay-area-511-muni-schedule/0__28_route_averages__name_bay-area-511-muni-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-muni-schedule/0__28_route_averages__name_bay-area-511-muni-schedule.ipynb index a7aefa263..f02a4335f 100644 --- a/portfolio/route_speeds/name_bay-area-511-muni-schedule/0__28_route_averages__name_bay-area-511-muni-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-muni-schedule/0__28_route_averages__name_bay-area-511-muni-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1297776b9380ce0d101d3018ad02ced7d503710d09ba61384587a8dc57ee856f -size 3147949 +oid sha256:0c7ef1b56f05962edc33c636c67c92d9c72af81731afe3332f3a76cf9cc47e2c +size 407717 diff --git a/portfolio/route_speeds/name_bay-area-511-mvgo-schedule/0__28_route_averages__name_bay-area-511-mvgo-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-mvgo-schedule/0__28_route_averages__name_bay-area-511-mvgo-schedule.ipynb index ea603011e..e5f36da46 100644 --- a/portfolio/route_speeds/name_bay-area-511-mvgo-schedule/0__28_route_averages__name_bay-area-511-mvgo-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-mvgo-schedule/0__28_route_averages__name_bay-area-511-mvgo-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b039b61763b009be63f953c55f39ad27bc37a5cb42a0f9389cc781bf1c804725 -size 106736 +oid sha256:aa525d1d17d4307bf86d7bbd98a40564d3a653613784a8300a7da0c01b82985c +size 60752 diff --git a/portfolio/route_speeds/name_bay-area-511-petaluma-schedule/0__28_route_averages__name_bay-area-511-petaluma-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-petaluma-schedule/0__28_route_averages__name_bay-area-511-petaluma-schedule.ipynb deleted file mode 100644 index 64483f816..000000000 --- a/portfolio/route_speeds/name_bay-area-511-petaluma-schedule/0__28_route_averages__name_bay-area-511-petaluma-schedule.ipynb +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:07c1346848a590e3cc60d1118cbbae0ba4ab2bf150ac5cc4f0d55a2f094e9464 -size 247613 diff --git a/portfolio/route_speeds/name_bay-area-511-samtrans-schedule/0__28_route_averages__name_bay-area-511-samtrans-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-samtrans-schedule/0__28_route_averages__name_bay-area-511-samtrans-schedule.ipynb index c78262ea7..ec9e0d7ca 100644 --- a/portfolio/route_speeds/name_bay-area-511-samtrans-schedule/0__28_route_averages__name_bay-area-511-samtrans-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-samtrans-schedule/0__28_route_averages__name_bay-area-511-samtrans-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7519fabe1d3c84fabb0d6e067a56cf0eacbbc5fe685ae27caf7c2bb7c4cbcc9b -size 2699240 +oid sha256:4cdad1c018fc2ae5ee5e09a4bc7891dd1f00fff1e48fcb1eda967c14254f7c80 +size 468936 diff --git a/portfolio/route_speeds/name_bay-area-511-san-francisco-bay-ferry-schedule/0__28_route_averages__name_bay-area-511-san-francisco-bay-ferry-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-san-francisco-bay-ferry-schedule/0__28_route_averages__name_bay-area-511-san-francisco-bay-ferry-schedule.ipynb index 53d4e8e31..36293727b 100644 --- a/portfolio/route_speeds/name_bay-area-511-san-francisco-bay-ferry-schedule/0__28_route_averages__name_bay-area-511-san-francisco-bay-ferry-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-san-francisco-bay-ferry-schedule/0__28_route_averages__name_bay-area-511-san-francisco-bay-ferry-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a381234b256db400bf76447e8be79897e33ca883093950a9a1306b5a736ed17d -size 27397 +oid sha256:90634dcf2f48863de5d6a240f253473563a0be10d6548ff301183d75ec5de92a +size 20227 diff --git a/portfolio/route_speeds/name_bay-area-511-santa-clara-transit-schedule/0__28_route_averages__name_bay-area-511-santa-clara-transit-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-santa-clara-transit-schedule/0__28_route_averages__name_bay-area-511-santa-clara-transit-schedule.ipynb index 0065df21a..47bc7d2af 100644 --- a/portfolio/route_speeds/name_bay-area-511-santa-clara-transit-schedule/0__28_route_averages__name_bay-area-511-santa-clara-transit-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-santa-clara-transit-schedule/0__28_route_averages__name_bay-area-511-santa-clara-transit-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3391cf9e83d5ce11c8dcd4b4e477140ad90fd0c753a5875decf21d1bdc96ab94 -size 3305968 +oid sha256:8bf5d4b2f908ff256b98f70bcb6bdc9f69050f88d5d87bf45e4a8f229e6d1cb9 +size 548986 diff --git a/portfolio/route_speeds/name_bay-area-511-santa-rosa-citybus-schedule/0__28_route_averages__name_bay-area-511-santa-rosa-citybus-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-santa-rosa-citybus-schedule/0__28_route_averages__name_bay-area-511-santa-rosa-citybus-schedule.ipynb deleted file mode 100644 index 64293e5fc..000000000 --- a/portfolio/route_speeds/name_bay-area-511-santa-rosa-citybus-schedule/0__28_route_averages__name_bay-area-511-santa-rosa-citybus-schedule.ipynb +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:bb59204459352f99d83e3e880eb0808177b7fdf78c2305d35adfd2c2660bf6d2 -size 446143 diff --git a/portfolio/route_speeds/name_bay-area-511-soltrans-schedule/0__28_route_averages__name_bay-area-511-soltrans-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-soltrans-schedule/0__28_route_averages__name_bay-area-511-soltrans-schedule.ipynb index 88b81cd2d..daa199c3f 100644 --- a/portfolio/route_speeds/name_bay-area-511-soltrans-schedule/0__28_route_averages__name_bay-area-511-soltrans-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-soltrans-schedule/0__28_route_averages__name_bay-area-511-soltrans-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:68377c4cfa6127e4c19129b690cb8762184c628fed82d565723bb18933bd141f -size 690070 +oid sha256:d869167bce3a06e20faaaee358647afc40599b1dae200da335ba15e6b597cc97 +size 256164 diff --git a/portfolio/route_speeds/name_bay-area-511-sonoma-marin-area-rail-transit-schedule/0__28_route_averages__name_bay-area-511-sonoma-marin-area-rail-transit-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-sonoma-marin-area-rail-transit-schedule/0__28_route_averages__name_bay-area-511-sonoma-marin-area-rail-transit-schedule.ipynb index eeece2804..de87e7eaf 100644 --- a/portfolio/route_speeds/name_bay-area-511-sonoma-marin-area-rail-transit-schedule/0__28_route_averages__name_bay-area-511-sonoma-marin-area-rail-transit-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-sonoma-marin-area-rail-transit-schedule/0__28_route_averages__name_bay-area-511-sonoma-marin-area-rail-transit-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dc41cb4ea5357f8ba3706df9f2c8e4528a9d3e2163876caf389449ee85f6eb7f -size 77314 +oid sha256:86c1a8959f5449c62bbbd5240b7dbbedc00b027535b112121f11a9d6ba0942d2 +size 77374 diff --git a/portfolio/route_speeds/name_bay-area-511-tri-delta-schedule/0__28_route_averages__name_bay-area-511-tri-delta-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-tri-delta-schedule/0__28_route_averages__name_bay-area-511-tri-delta-schedule.ipynb index ecd0e49e1..0acfb2ac5 100644 --- a/portfolio/route_speeds/name_bay-area-511-tri-delta-schedule/0__28_route_averages__name_bay-area-511-tri-delta-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-tri-delta-schedule/0__28_route_averages__name_bay-area-511-tri-delta-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fbbd3fc8fda7d28fca66534fcedacb98e24cd4bcbaad5088f5162d97c2a40c21 -size 779711 +oid sha256:4fd1fab1e96aca95372da5cde3ab585462017b63e772937ed8e7e8d2f68194e5 +size 383748 diff --git a/portfolio/route_speeds/name_bay-area-511-tri-valley-wheels-schedule/0__28_route_averages__name_bay-area-511-tri-valley-wheels-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-tri-valley-wheels-schedule/0__28_route_averages__name_bay-area-511-tri-valley-wheels-schedule.ipynb index b0510cd60..6baa27c9e 100644 --- a/portfolio/route_speeds/name_bay-area-511-tri-valley-wheels-schedule/0__28_route_averages__name_bay-area-511-tri-valley-wheels-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-tri-valley-wheels-schedule/0__28_route_averages__name_bay-area-511-tri-valley-wheels-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f9df1414a7f25102005d3eedeaaaf8e813425e14823c799809ae664e6e086d0d -size 824796 +oid sha256:a7f2e5e06e61aae4c4ba316bbe1a9336d7ac69107bf9f09f46831e00122c25f0 +size 172412 diff --git a/portfolio/route_speeds/name_bay-area-511-union-city-transit-schedule/0__28_route_averages__name_bay-area-511-union-city-transit-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-union-city-transit-schedule/0__28_route_averages__name_bay-area-511-union-city-transit-schedule.ipynb deleted file mode 100644 index d40e5fc07..000000000 --- a/portfolio/route_speeds/name_bay-area-511-union-city-transit-schedule/0__28_route_averages__name_bay-area-511-union-city-transit-schedule.ipynb +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d0248d630550e1eedc44f9cf552375b8fe7dd59d71c16ec9df0c9a2431487f06 -size 262434 diff --git a/portfolio/route_speeds/name_bay-area-511-vine-transit-schedule/0__28_route_averages__name_bay-area-511-vine-transit-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-vine-transit-schedule/0__28_route_averages__name_bay-area-511-vine-transit-schedule.ipynb index 9c03b253a..578aabf4a 100644 --- a/portfolio/route_speeds/name_bay-area-511-vine-transit-schedule/0__28_route_averages__name_bay-area-511-vine-transit-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-vine-transit-schedule/0__28_route_averages__name_bay-area-511-vine-transit-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:584fe0aed4fcd5bdf62e88626187f5d8248ef297f7d5012ab2ef4c89bacc6687 -size 344546 +oid sha256:c89760b0e6f91eb4dd9b77d4f6efa9104ac098d50fa7f45d5207f7ce3696c126 +size 262172 diff --git a/portfolio/route_speeds/name_bay-area-511-westcat-schedule/0__28_route_averages__name_bay-area-511-westcat-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-westcat-schedule/0__28_route_averages__name_bay-area-511-westcat-schedule.ipynb index f828d8aea..7a713f0d5 100644 --- a/portfolio/route_speeds/name_bay-area-511-westcat-schedule/0__28_route_averages__name_bay-area-511-westcat-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-westcat-schedule/0__28_route_averages__name_bay-area-511-westcat-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dcf6f1c50401ef358be3c67dba5831ab842d5a9141fc1babced0b2565b2560aa -size 543542 +oid sha256:057671d05c2cf84b3195541182a165c0acee3093ebc7439ae0ceef6b16df7584 +size 70787 diff --git a/portfolio/route_speeds/name_beach-cities-gmv-schedule/0__28_route_averages__name_beach-cities-gmv-schedule.ipynb b/portfolio/route_speeds/name_beach-cities-gmv-schedule/0__28_route_averages__name_beach-cities-gmv-schedule.ipynb index 7a79b5105..531d8e7b7 100644 --- a/portfolio/route_speeds/name_beach-cities-gmv-schedule/0__28_route_averages__name_beach-cities-gmv-schedule.ipynb +++ b/portfolio/route_speeds/name_beach-cities-gmv-schedule/0__28_route_averages__name_beach-cities-gmv-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:336bc30ba03692a4f5be233d8b58cb06b2b904dda6caaa22cf0d0d46a305bff8 -size 120178 +oid sha256:11f28a66a137ac4a7a917cf5905df8d69ca47a9a6753d140df8a3edbeb664b82 +size 37097 diff --git a/portfolio/route_speeds/name_bear-schedule/0__28_route_averages__name_bear-schedule.ipynb b/portfolio/route_speeds/name_bear-schedule/0__28_route_averages__name_bear-schedule.ipynb deleted file mode 100644 index 68a56f4ca..000000000 --- a/portfolio/route_speeds/name_bear-schedule/0__28_route_averages__name_bear-schedule.ipynb +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b0781dee9a33512118ee3c86225d2036eff3aa81bd7de765a4b6fe3c6a999601 -size 159109 diff --git a/portfolio/route_speeds/name_beaumont-pass-schedule/0__28_route_averages__name_beaumont-pass-schedule.ipynb b/portfolio/route_speeds/name_beaumont-pass-schedule/0__28_route_averages__name_beaumont-pass-schedule.ipynb index a1aee4e0a..eb0202682 100644 --- a/portfolio/route_speeds/name_beaumont-pass-schedule/0__28_route_averages__name_beaumont-pass-schedule.ipynb +++ b/portfolio/route_speeds/name_beaumont-pass-schedule/0__28_route_averages__name_beaumont-pass-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5a94983a6fcfc0304f431317024df08d65002b15c49e751710d535734c568c49 -size 303522 +oid sha256:6c761f6e39bbe1375be7c7efd737a396b28a3232a6f28a3acc8972fc39b43312 +size 107286 diff --git a/portfolio/route_speeds/name_big-blue-bus-schedule/0__28_route_averages__name_big-blue-bus-schedule.ipynb b/portfolio/route_speeds/name_big-blue-bus-schedule/0__28_route_averages__name_big-blue-bus-schedule.ipynb index 78bdf431e..3011edd44 100644 --- a/portfolio/route_speeds/name_big-blue-bus-schedule/0__28_route_averages__name_big-blue-bus-schedule.ipynb +++ b/portfolio/route_speeds/name_big-blue-bus-schedule/0__28_route_averages__name_big-blue-bus-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:eec1a05133f29215d8635ed50efdd9b0fc358879b3364c1c1d33220b86fca324 -size 894138 +oid sha256:114f602de79ab72046443e8733e4c5e5a7e4db071a1cc8dc0449a56d62414f8a +size 217130 diff --git a/portfolio/route_speeds/name_bruinbus-schedule/0__28_route_averages__name_bruinbus-schedule.ipynb b/portfolio/route_speeds/name_bruinbus-schedule/0__28_route_averages__name_bruinbus-schedule.ipynb index 55ec5226e..1e8dc9fec 100644 --- a/portfolio/route_speeds/name_bruinbus-schedule/0__28_route_averages__name_bruinbus-schedule.ipynb +++ b/portfolio/route_speeds/name_bruinbus-schedule/0__28_route_averages__name_bruinbus-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6f84146696e1406dafbdda194a9c349fc1dd79ca682605706e0b0c3a3861251a -size 35797 +oid sha256:d498bda2c22628f14a3f9fc07060677f5edd28308244362dc63f015c2bb0a98d +size 35775 diff --git a/portfolio/route_speeds/name_burbank-schedule/0__28_route_averages__name_burbank-schedule.ipynb b/portfolio/route_speeds/name_burbank-schedule/0__28_route_averages__name_burbank-schedule.ipynb index 5236a922f..8e43c933c 100644 --- a/portfolio/route_speeds/name_burbank-schedule/0__28_route_averages__name_burbank-schedule.ipynb +++ b/portfolio/route_speeds/name_burbank-schedule/0__28_route_averages__name_burbank-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:02030b321350141dfa1a24ff57e541e54834e114d8841b167f9be9476590e812 -size 68883 +oid sha256:2bfb803d378abe53941b6f216073214c36e8f079916171c989d0cd6ebfd90a62 +size 44231 diff --git a/portfolio/route_speeds/name_commerce-schedule/0__28_route_averages__name_commerce-schedule.ipynb b/portfolio/route_speeds/name_commerce-schedule/0__28_route_averages__name_commerce-schedule.ipynb index 49a72b441..c6784a6cd 100644 --- a/portfolio/route_speeds/name_commerce-schedule/0__28_route_averages__name_commerce-schedule.ipynb +++ b/portfolio/route_speeds/name_commerce-schedule/0__28_route_averages__name_commerce-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3167e91943ee24e37764c40111c77c5d0d795814b33176365269b105cdbb0aa0 -size 161873 +oid sha256:c1e85c6233bfd375e86dda204b2c2edb0bd3ea3a8d9957c7b778a508f953692d +size 47110 diff --git a/portfolio/route_speeds/name_culver-city-schedule/0__28_route_averages__name_culver-city-schedule.ipynb b/portfolio/route_speeds/name_culver-city-schedule/0__28_route_averages__name_culver-city-schedule.ipynb index 437afacd7..712b4b400 100644 --- a/portfolio/route_speeds/name_culver-city-schedule/0__28_route_averages__name_culver-city-schedule.ipynb +++ b/portfolio/route_speeds/name_culver-city-schedule/0__28_route_averages__name_culver-city-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:872d8c19dd0f204979d983438c4918f79785523e3308920656ad602973b113c3 -size 484864 +oid sha256:2b24b286c59e94986f9eb3b272d97537d41581904f920558c123728f6be97786 +size 37616 diff --git a/portfolio/route_speeds/name_desert-roadrunner-gmv-schedule/0__28_route_averages__name_desert-roadrunner-gmv-schedule.ipynb b/portfolio/route_speeds/name_desert-roadrunner-gmv-schedule/0__28_route_averages__name_desert-roadrunner-gmv-schedule.ipynb index 8f5972a84..b46379513 100644 --- a/portfolio/route_speeds/name_desert-roadrunner-gmv-schedule/0__28_route_averages__name_desert-roadrunner-gmv-schedule.ipynb +++ b/portfolio/route_speeds/name_desert-roadrunner-gmv-schedule/0__28_route_averages__name_desert-roadrunner-gmv-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e331de61a12d56e0259aaaf0a699949fb434dbfb1ba5d77dff4a8fa9a84e4a7e -size 76846 +oid sha256:44c0661de29bcc90bbbb64e0c5315e81a28dc8a6f94547fb5742affb45c36ea4 +size 38151 diff --git a/portfolio/route_speeds/name_eastern-sierra-schedule/0__28_route_averages__name_eastern-sierra-schedule.ipynb b/portfolio/route_speeds/name_eastern-sierra-schedule/0__28_route_averages__name_eastern-sierra-schedule.ipynb index 77fab4e17..89b2cbbda 100644 --- a/portfolio/route_speeds/name_eastern-sierra-schedule/0__28_route_averages__name_eastern-sierra-schedule.ipynb +++ b/portfolio/route_speeds/name_eastern-sierra-schedule/0__28_route_averages__name_eastern-sierra-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a13da322c903dd5583cd9480ba300acd1d655b4eba1130a20c1ae0634d9832aa -size 281977 +oid sha256:3035ee108e7b7dfd32abf0a8e84da6a1eb72af115cf38f690205469b868941cf +size 121579 diff --git a/portfolio/route_speeds/name_elk-grove-schedule/0__28_route_averages__name_elk-grove-schedule.ipynb b/portfolio/route_speeds/name_elk-grove-schedule/0__28_route_averages__name_elk-grove-schedule.ipynb index 55dd73fb3..afd84dd97 100644 --- a/portfolio/route_speeds/name_elk-grove-schedule/0__28_route_averages__name_elk-grove-schedule.ipynb +++ b/portfolio/route_speeds/name_elk-grove-schedule/0__28_route_averages__name_elk-grove-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:42ef4c6780a9727b017f1be2e245dff03cdbb8799f5a67edb5eca7c441198f76 -size 669054 +oid sha256:9b491bde14798830a5c8f587c35b6781c9c1611343cea50eb739d48eb9f2e482 +size 380170 diff --git a/portfolio/route_speeds/name_etrans-schedule/0__28_route_averages__name_etrans-schedule.ipynb b/portfolio/route_speeds/name_etrans-schedule/0__28_route_averages__name_etrans-schedule.ipynb deleted file mode 100644 index 6df04ca01..000000000 --- a/portfolio/route_speeds/name_etrans-schedule/0__28_route_averages__name_etrans-schedule.ipynb +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5216275bdd0fcdef8cc7bd7f5f855c5061a5e9933c0c3273d43874c7c912d2ca -size 64584 diff --git a/portfolio/route_speeds/name_fresno-schedule/0__28_route_averages__name_fresno-schedule.ipynb b/portfolio/route_speeds/name_fresno-schedule/0__28_route_averages__name_fresno-schedule.ipynb index 0936dc6f7..c2216cebb 100644 --- a/portfolio/route_speeds/name_fresno-schedule/0__28_route_averages__name_fresno-schedule.ipynb +++ b/portfolio/route_speeds/name_fresno-schedule/0__28_route_averages__name_fresno-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2a4eccc4e169619864928420a2bf585d2d0c2b54638fe498dc9c99a040ea2854 -size 804667 +oid sha256:769a61b699bbcf31417f2e3ff743603e041b0219621f621a36c920576b3b9930 +size 64100 diff --git a/portfolio/route_speeds/name_get-schedule/0__28_route_averages__name_get-schedule.ipynb b/portfolio/route_speeds/name_get-schedule/0__28_route_averages__name_get-schedule.ipynb index 560828011..f91a534e0 100644 --- a/portfolio/route_speeds/name_get-schedule/0__28_route_averages__name_get-schedule.ipynb +++ b/portfolio/route_speeds/name_get-schedule/0__28_route_averages__name_get-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6c886473f62ad888fa36cf0d357fc5edcce4626d48c69e19ff5283499bd679e9 -size 800043 +oid sha256:6f787039d0fcf39354a2d4ed09213822d5515b3752b0023f74cc068970b1ee1d +size 238134 diff --git a/portfolio/route_speeds/name_humboldt-schedule/0__28_route_averages__name_humboldt-schedule.ipynb b/portfolio/route_speeds/name_humboldt-schedule/0__28_route_averages__name_humboldt-schedule.ipynb index 828f921d2..81afe62e4 100644 --- a/portfolio/route_speeds/name_humboldt-schedule/0__28_route_averages__name_humboldt-schedule.ipynb +++ b/portfolio/route_speeds/name_humboldt-schedule/0__28_route_averages__name_humboldt-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ad49cb8af372912129987ec964b7e8c03ee35f7e428d4f7193b8efcf4ec467e2 -size 370166 +oid sha256:b938e620198d2c0c006088a89f4c25591d1a3e778b613df9cc5064d28046f8ee +size 287000 diff --git a/portfolio/route_speeds/name_kings-schedule/0__28_route_averages__name_kings-schedule.ipynb b/portfolio/route_speeds/name_kings-schedule/0__28_route_averages__name_kings-schedule.ipynb index d20c910bf..effea3be0 100644 --- a/portfolio/route_speeds/name_kings-schedule/0__28_route_averages__name_kings-schedule.ipynb +++ b/portfolio/route_speeds/name_kings-schedule/0__28_route_averages__name_kings-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bcfc7416ff794765264ad339cce55867046959463152402658d519a3e21168cf -size 374432 +oid sha256:67b8abf652a2210068cdbc804fc1ed0ea9bc48913c880185d4c8226e379429d8 +size 184151 diff --git a/portfolio/route_speeds/name_la-dot-schedule/0__28_route_averages__name_la-dot-schedule.ipynb b/portfolio/route_speeds/name_la-dot-schedule/0__28_route_averages__name_la-dot-schedule.ipynb index 09be68995..0f7c267e0 100644 --- a/portfolio/route_speeds/name_la-dot-schedule/0__28_route_averages__name_la-dot-schedule.ipynb +++ b/portfolio/route_speeds/name_la-dot-schedule/0__28_route_averages__name_la-dot-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:535a0a3f2fe5e0ce8c969b36df75e57c672f206c05ed92140626d08acd6a31ec -size 2201076 +oid sha256:92eeb6a89da478f02e82e412c0b0f5a7bc0e2dbbfb4c37347e64bdcc6ed57546 +size 748399 diff --git a/portfolio/route_speeds/name_la-metro-bus-schedule/0__28_route_averages__name_la-metro-bus-schedule.ipynb b/portfolio/route_speeds/name_la-metro-bus-schedule/0__28_route_averages__name_la-metro-bus-schedule.ipynb index 1f0e7f934..e2498decf 100644 --- a/portfolio/route_speeds/name_la-metro-bus-schedule/0__28_route_averages__name_la-metro-bus-schedule.ipynb +++ b/portfolio/route_speeds/name_la-metro-bus-schedule/0__28_route_averages__name_la-metro-bus-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fbaa5f3de045fcc15b8cf8b63a4b69f987d78d69e9e9325e4451facef11f70dd -size 6430978 +oid sha256:1d7ee56584c53210a9c845c407f69e7b0e6ac188b0dd8d823a840a97f67204ae +size 1239058 diff --git a/portfolio/route_speeds/name_la-metro-rail-schedule/0__28_route_averages__name_la-metro-rail-schedule.ipynb b/portfolio/route_speeds/name_la-metro-rail-schedule/0__28_route_averages__name_la-metro-rail-schedule.ipynb index c5b3c5a6d..5b640f5e8 100644 --- a/portfolio/route_speeds/name_la-metro-rail-schedule/0__28_route_averages__name_la-metro-rail-schedule.ipynb +++ b/portfolio/route_speeds/name_la-metro-rail-schedule/0__28_route_averages__name_la-metro-rail-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1e1ef5819b94ebcd9f99bce78af87468d8ad6ab7feef04174125480f8c047c74 -size 258344 +oid sha256:11364a2d9aa6d59ccae57038bdc7d2ba2a84277f6f91a0996e49d0346941ca31 +size 85418 diff --git a/portfolio/route_speeds/name_lake-schedule/0__28_route_averages__name_lake-schedule.ipynb b/portfolio/route_speeds/name_lake-schedule/0__28_route_averages__name_lake-schedule.ipynb index 960401734..5b4dfe5fa 100644 --- a/portfolio/route_speeds/name_lake-schedule/0__28_route_averages__name_lake-schedule.ipynb +++ b/portfolio/route_speeds/name_lake-schedule/0__28_route_averages__name_lake-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c5c1dfc8e667b622a1dc308bdc8a0261a2e32aef495bcd9ade3776935db0014d -size 358447 +oid sha256:0bcbe3d345504341df284b89fbbfd93a2b7b87da01ea7fbe265e7de5192e5956 +size 293327 diff --git a/portfolio/route_speeds/name_lawndale-beat-gmv-schedule/0__28_route_averages__name_lawndale-beat-gmv-schedule.ipynb b/portfolio/route_speeds/name_lawndale-beat-gmv-schedule/0__28_route_averages__name_lawndale-beat-gmv-schedule.ipynb index a1c60b1ef..eec876be3 100644 --- a/portfolio/route_speeds/name_lawndale-beat-gmv-schedule/0__28_route_averages__name_lawndale-beat-gmv-schedule.ipynb +++ b/portfolio/route_speeds/name_lawndale-beat-gmv-schedule/0__28_route_averages__name_lawndale-beat-gmv-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bf3280e45624373efd0975b6d8db5cde78a12b2bfdecb469d4711003985d7b8b -size 41135 +oid sha256:d8186406e9873a19c6ad5c587a0f9fa7b9c1cd6b3e62c68314d35841aabd3efe +size 28091 diff --git a/portfolio/route_speeds/name_long-beach-schedule/0__28_route_averages__name_long-beach-schedule.ipynb b/portfolio/route_speeds/name_long-beach-schedule/0__28_route_averages__name_long-beach-schedule.ipynb index 29e79e876..fdcf68b1f 100644 --- a/portfolio/route_speeds/name_long-beach-schedule/0__28_route_averages__name_long-beach-schedule.ipynb +++ b/portfolio/route_speeds/name_long-beach-schedule/0__28_route_averages__name_long-beach-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:85f1df5cc5e80b65fd4002712a80db6ed6698ab2d99771a76bcb4ccd9da597be -size 1795952 +oid sha256:135a69eacda3739da43924cd2e07c18d5cc8226d42f21fc044c4ce5b6297a2cb +size 172843 diff --git a/portfolio/route_speeds/name_madera-county-connection-schedule/0__28_route_averages__name_madera-county-connection-schedule.ipynb b/portfolio/route_speeds/name_madera-county-connection-schedule/0__28_route_averages__name_madera-county-connection-schedule.ipynb index 93dc995d5..4d0a053b3 100644 --- a/portfolio/route_speeds/name_madera-county-connection-schedule/0__28_route_averages__name_madera-county-connection-schedule.ipynb +++ b/portfolio/route_speeds/name_madera-county-connection-schedule/0__28_route_averages__name_madera-county-connection-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:84ba624a7db7075520438492a4fbecb0dfbd467a5cd875581adc3e21d7ffb75e -size 220714 +oid sha256:e32e10de2280db6fa48200405d8318aeeeeaffcc3624976e0d18207ab62f5759 +size 215507 diff --git a/portfolio/route_speeds/name_mendocino-schedule/0__28_route_averages__name_mendocino-schedule.ipynb b/portfolio/route_speeds/name_mendocino-schedule/0__28_route_averages__name_mendocino-schedule.ipynb index 91c198b82..5fac933f9 100644 --- a/portfolio/route_speeds/name_mendocino-schedule/0__28_route_averages__name_mendocino-schedule.ipynb +++ b/portfolio/route_speeds/name_mendocino-schedule/0__28_route_averages__name_mendocino-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ba3acb2173d335089d912ef4f64ef870fcb321a5a3b21074a3223f5c3dd6ca25 -size 334776 +oid sha256:6c6a4365c39c577a33aa7d78d46a10a2eab83a8e3f4800a2ce3bf3d5900c93db +size 142801 diff --git a/portfolio/route_speeds/name_monterey-salinas-schedule/0__28_route_averages__name_monterey-salinas-schedule.ipynb b/portfolio/route_speeds/name_monterey-salinas-schedule/0__28_route_averages__name_monterey-salinas-schedule.ipynb index 1ec1b4843..229b17ac4 100644 --- a/portfolio/route_speeds/name_monterey-salinas-schedule/0__28_route_averages__name_monterey-salinas-schedule.ipynb +++ b/portfolio/route_speeds/name_monterey-salinas-schedule/0__28_route_averages__name_monterey-salinas-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4fbe7a56359d93999a83ad72b913f87c64eeffdea110965071a1c96b7e93df4d -size 1694243 +oid sha256:e3823b06d1309df2ee10ef8403247cd38c216278672f8b6a4f0803df31e32e82 +size 371943 diff --git a/portfolio/route_speeds/name_nevada-county-schedule/0__28_route_averages__name_nevada-county-schedule.ipynb b/portfolio/route_speeds/name_nevada-county-schedule/0__28_route_averages__name_nevada-county-schedule.ipynb index e6cbce9f3..e4b5c46e6 100644 --- a/portfolio/route_speeds/name_nevada-county-schedule/0__28_route_averages__name_nevada-county-schedule.ipynb +++ b/portfolio/route_speeds/name_nevada-county-schedule/0__28_route_averages__name_nevada-county-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b51e57cad300f5cfb846e9764e91757eccfef7fdb78c9b1567117216c85b1249 -size 331373 +oid sha256:9d723a4217000f5834e16ae5317c93e93ea8c7529ceda31fe03bb604f1e5606b +size 167495 diff --git a/portfolio/route_speeds/name_north-county-schedule/0__28_route_averages__name_north-county-schedule.ipynb b/portfolio/route_speeds/name_north-county-schedule/0__28_route_averages__name_north-county-schedule.ipynb index 45c0b471c..4e6ffe0e9 100644 --- a/portfolio/route_speeds/name_north-county-schedule/0__28_route_averages__name_north-county-schedule.ipynb +++ b/portfolio/route_speeds/name_north-county-schedule/0__28_route_averages__name_north-county-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3a205fab1b23ec8c85c3e7d9f0e14478c66097092bcb67b421e69948c7c5213e -size 1876425 +oid sha256:ed0f3e79fbe1fc82910885fcc1e2debf9cdf371eaeb80b43583853baacaf14a4 +size 347246 diff --git a/portfolio/route_speeds/name_norwalk-avail-schedule/0__28_route_averages__name_norwalk-avail-schedule.ipynb b/portfolio/route_speeds/name_norwalk-avail-schedule/0__28_route_averages__name_norwalk-avail-schedule.ipynb index 069160023..2a0086dc5 100644 --- a/portfolio/route_speeds/name_norwalk-avail-schedule/0__28_route_averages__name_norwalk-avail-schedule.ipynb +++ b/portfolio/route_speeds/name_norwalk-avail-schedule/0__28_route_averages__name_norwalk-avail-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fa5ebb16275dc39e180c4743bcea49275513df0b53ed9d464b5c89024b1804e3 -size 207130 +oid sha256:9510b8ecd8035ef7d019ddd5fd58ccaec4beebd9e33dfb77decf0339984d7e1c +size 20023 diff --git a/portfolio/route_speeds/name_octa-schedule/0__28_route_averages__name_octa-schedule.ipynb b/portfolio/route_speeds/name_octa-schedule/0__28_route_averages__name_octa-schedule.ipynb index d402f15e1..ab32ed95d 100644 --- a/portfolio/route_speeds/name_octa-schedule/0__28_route_averages__name_octa-schedule.ipynb +++ b/portfolio/route_speeds/name_octa-schedule/0__28_route_averages__name_octa-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:383145c50ebec76b3c99a27096b177343ded936efb17618e42614cd432291c06 -size 2975290 +oid sha256:62dc62b746a9beaec2e9d8fa405589f8fdf36b798c558b506a8b109a975e12d7 +size 414645 diff --git a/portfolio/route_speeds/name_omnitrans-schedule/0__28_route_averages__name_omnitrans-schedule.ipynb b/portfolio/route_speeds/name_omnitrans-schedule/0__28_route_averages__name_omnitrans-schedule.ipynb index c008d6219..2b5190584 100644 --- a/portfolio/route_speeds/name_omnitrans-schedule/0__28_route_averages__name_omnitrans-schedule.ipynb +++ b/portfolio/route_speeds/name_omnitrans-schedule/0__28_route_averages__name_omnitrans-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bf23df7f3c0c5781d51b2dd0977a524f328abdefaa0cb988c07133bd711f4894 -size 678118 +oid sha256:6abce2852b6a2c2a388ab0adbb71d6eb794c9471650b74eeb2ada5d2c0569d06 +size 104859 diff --git a/portfolio/route_speeds/name_pasadena-schedule/0__28_route_averages__name_pasadena-schedule.ipynb b/portfolio/route_speeds/name_pasadena-schedule/0__28_route_averages__name_pasadena-schedule.ipynb deleted file mode 100644 index 1fb722837..000000000 --- a/portfolio/route_speeds/name_pasadena-schedule/0__28_route_averages__name_pasadena-schedule.ipynb +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2612dd24c1516c9aaf0302d208172a20459accd524f08a3e4ef3402b4c24cccc -size 364940 diff --git a/portfolio/route_speeds/name_presidigo-schedule/0__28_route_averages__name_presidigo-schedule.ipynb b/portfolio/route_speeds/name_presidigo-schedule/0__28_route_averages__name_presidigo-schedule.ipynb index 4417b0f15..878157ac1 100644 --- a/portfolio/route_speeds/name_presidigo-schedule/0__28_route_averages__name_presidigo-schedule.ipynb +++ b/portfolio/route_speeds/name_presidigo-schedule/0__28_route_averages__name_presidigo-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:227ddcf491c3fb72e498fb6483956e568548e4effb73d9e0a53ce7fdb568fa3f -size 69972 +oid sha256:940d6a6e56df72ff9a202f75b6996907054f3657e263a9d2176bfc12271b9862 +size 46757 diff --git a/portfolio/route_speeds/name_redding-schedule/0__28_route_averages__name_redding-schedule.ipynb b/portfolio/route_speeds/name_redding-schedule/0__28_route_averages__name_redding-schedule.ipynb index 401ecb5d2..80c26e3a0 100644 --- a/portfolio/route_speeds/name_redding-schedule/0__28_route_averages__name_redding-schedule.ipynb +++ b/portfolio/route_speeds/name_redding-schedule/0__28_route_averages__name_redding-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:94fe84074fbea45bd9b956f13dca9003fb6efda4469f30a352cf54f89721dc99 -size 542886 +oid sha256:b06df0a143f4c341486980de0719bdff8b167660ba4425ecc6975e2ba8ac54e2 +size 99578 diff --git a/portfolio/route_speeds/name_redwood-coast-schedule/0__28_route_averages__name_redwood-coast-schedule.ipynb b/portfolio/route_speeds/name_redwood-coast-schedule/0__28_route_averages__name_redwood-coast-schedule.ipynb index a20a54b4b..764a6266e 100644 --- a/portfolio/route_speeds/name_redwood-coast-schedule/0__28_route_averages__name_redwood-coast-schedule.ipynb +++ b/portfolio/route_speeds/name_redwood-coast-schedule/0__28_route_averages__name_redwood-coast-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:45c7fbd3c830ed72db52ab1882b08570935da6259ed32348a94c4726817e633b -size 259025 +oid sha256:1747a48fd9a4e565153bbe210ed4787b7d685319e71e5bddb6013293a67c957b +size 185566 diff --git a/portfolio/route_speeds/name_riverside-schedule/0__28_route_averages__name_riverside-schedule.ipynb b/portfolio/route_speeds/name_riverside-schedule/0__28_route_averages__name_riverside-schedule.ipynb index b58857e2f..d1a5f1068 100644 --- a/portfolio/route_speeds/name_riverside-schedule/0__28_route_averages__name_riverside-schedule.ipynb +++ b/portfolio/route_speeds/name_riverside-schedule/0__28_route_averages__name_riverside-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:16b9b0b86a0e986966e4cdbcf30830dacde7b8c037757b5921e204bebd47d61a -size 1731425 +oid sha256:b37733de6322afb8fa972b513e7c81918e8dc9061d20b5f869b5b148855fc64b +size 656938 diff --git a/portfolio/route_speeds/name_sacramento-schedule/0__28_route_averages__name_sacramento-schedule.ipynb b/portfolio/route_speeds/name_sacramento-schedule/0__28_route_averages__name_sacramento-schedule.ipynb index e4e75031e..03c8f701c 100644 --- a/portfolio/route_speeds/name_sacramento-schedule/0__28_route_averages__name_sacramento-schedule.ipynb +++ b/portfolio/route_speeds/name_sacramento-schedule/0__28_route_averages__name_sacramento-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4c3f4106e604516da78a481f054b1676b4a7cb7443d49bbe2a21d1ec46c57aff -size 2011304 +oid sha256:361882de01d6cceae0e114e09fba6def924f4720b06a06dab527d78d5adc815d +size 283781 diff --git a/portfolio/route_speeds/name_san-diego-schedule/0__28_route_averages__name_san-diego-schedule.ipynb b/portfolio/route_speeds/name_san-diego-schedule/0__28_route_averages__name_san-diego-schedule.ipynb index d6e4353b0..e4bec51a9 100644 --- a/portfolio/route_speeds/name_san-diego-schedule/0__28_route_averages__name_san-diego-schedule.ipynb +++ b/portfolio/route_speeds/name_san-diego-schedule/0__28_route_averages__name_san-diego-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:060224ea00430a25189b237eba787747c6312b24b5ae888c48ad0061ca4f7efe -size 4866893 +oid sha256:fcd1b6e4c44bca0a821621d8f54b8785ea28b8c7e85578f93b6337beaaabd775 +size 939284 diff --git a/portfolio/route_speeds/name_san-joaquin-schedule/0__28_route_averages__name_san-joaquin-schedule.ipynb b/portfolio/route_speeds/name_san-joaquin-schedule/0__28_route_averages__name_san-joaquin-schedule.ipynb index 0608c3d7f..9ff73a06e 100644 --- a/portfolio/route_speeds/name_san-joaquin-schedule/0__28_route_averages__name_san-joaquin-schedule.ipynb +++ b/portfolio/route_speeds/name_san-joaquin-schedule/0__28_route_averages__name_san-joaquin-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:caa944b2f5dfeb4d4c547230e380a7d049c409e930e8beb6c4d0a66b61b81280 -size 1597596 +oid sha256:8f743c23d1e7c52360976a557c5e99c74cd24d00938799a01e28178efbd20dae +size 505548 diff --git a/portfolio/route_speeds/name_santa-clarita-schedule/0__28_route_averages__name_santa-clarita-schedule.ipynb b/portfolio/route_speeds/name_santa-clarita-schedule/0__28_route_averages__name_santa-clarita-schedule.ipynb index 86fde8190..3f16d370c 100644 --- a/portfolio/route_speeds/name_santa-clarita-schedule/0__28_route_averages__name_santa-clarita-schedule.ipynb +++ b/portfolio/route_speeds/name_santa-clarita-schedule/0__28_route_averages__name_santa-clarita-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:000c463f841502f0aba0e5052b2644a0612fdce7d6f064c23e57f016ff4d4204 -size 1062535 +oid sha256:019090bc19f182fb6df9ce50d9d5f7d017b4d33cd065a7c10791587b0cfdacf0 +size 289894 diff --git a/portfolio/route_speeds/name_santa-cruz-schedule/0__28_route_averages__name_santa-cruz-schedule.ipynb b/portfolio/route_speeds/name_santa-cruz-schedule/0__28_route_averages__name_santa-cruz-schedule.ipynb index 3de231428..040330027 100644 --- a/portfolio/route_speeds/name_santa-cruz-schedule/0__28_route_averages__name_santa-cruz-schedule.ipynb +++ b/portfolio/route_speeds/name_santa-cruz-schedule/0__28_route_averages__name_santa-cruz-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:aa4e0b01c4786d4fe7c9e7066b4a20d641f4e10a33a3378686483e13a10b67c1 -size 560355 +oid sha256:4138aaa9244df451964d7efcd888877bfd35a134409dd05b2282f8b2dfb48840 +size 162092 diff --git a/portfolio/route_speeds/name_santa-maria-schedule/0__28_route_averages__name_santa-maria-schedule.ipynb b/portfolio/route_speeds/name_santa-maria-schedule/0__28_route_averages__name_santa-maria-schedule.ipynb index 671b5ce19..f38dd3a59 100644 --- a/portfolio/route_speeds/name_santa-maria-schedule/0__28_route_averages__name_santa-maria-schedule.ipynb +++ b/portfolio/route_speeds/name_santa-maria-schedule/0__28_route_averages__name_santa-maria-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fedf3312bf7f94f2972cdafbb2d9d041797ad1fd595f15bb6a69f085070cc379 -size 49548 +oid sha256:3f9cb675493c0d69223d63a1cf3d83b0bdb4f1d4231f55318498f2c89ab5c541 +size 49528 diff --git a/portfolio/route_speeds/name_santa-ynez-mecatran-schedule/0__28_route_averages__name_santa-ynez-mecatran-schedule.ipynb b/portfolio/route_speeds/name_santa-ynez-mecatran-schedule/0__28_route_averages__name_santa-ynez-mecatran-schedule.ipynb index 5282ee8c4..c06e9538d 100644 --- a/portfolio/route_speeds/name_santa-ynez-mecatran-schedule/0__28_route_averages__name_santa-ynez-mecatran-schedule.ipynb +++ b/portfolio/route_speeds/name_santa-ynez-mecatran-schedule/0__28_route_averages__name_santa-ynez-mecatran-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2ef7ab9aacf344fdbbcc340e732dfaee30c9828b8df8fec973fc6fd6260880fc -size 79929 +oid sha256:8942821d0546aef971718d025e73fa65f9a69594ef5e5f420395796dc1a6bfa5 +size 73903 diff --git a/portfolio/route_speeds/name_sbmtd-schedule/0__28_route_averages__name_sbmtd-schedule.ipynb b/portfolio/route_speeds/name_sbmtd-schedule/0__28_route_averages__name_sbmtd-schedule.ipynb index b5b7944dc..eb681bb8c 100644 --- a/portfolio/route_speeds/name_sbmtd-schedule/0__28_route_averages__name_sbmtd-schedule.ipynb +++ b/portfolio/route_speeds/name_sbmtd-schedule/0__28_route_averages__name_sbmtd-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:699c1b17c1c098e9324f5483af34813791a6bcfe68787f0eb630858b073f6683 -size 1179784 +oid sha256:cf1578bcaa8663aef33f9d9e49307ce5ef66080cae17e1f8e889b2365437d8f8 +size 222493 diff --git a/portfolio/route_speeds/name_slorta-schedule/0__28_route_averages__name_slorta-schedule.ipynb b/portfolio/route_speeds/name_slorta-schedule/0__28_route_averages__name_slorta-schedule.ipynb index 8f7a5433f..6bb60b5c5 100644 --- a/portfolio/route_speeds/name_slorta-schedule/0__28_route_averages__name_slorta-schedule.ipynb +++ b/portfolio/route_speeds/name_slorta-schedule/0__28_route_averages__name_slorta-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e87d5a9fc6366f7dc094c6e4e647aeab8142b904cade947021cc5c0c0fd258a7 -size 186882 +oid sha256:811332ec816379262d954d5fcef80f919f0ded3c2db1dfcec3d1453335343964 +size 147796 diff --git a/portfolio/route_speeds/name_stanrta-schedule/0__28_route_averages__name_stanrta-schedule.ipynb b/portfolio/route_speeds/name_stanrta-schedule/0__28_route_averages__name_stanrta-schedule.ipynb index 149ad64f0..b5ada109d 100644 --- a/portfolio/route_speeds/name_stanrta-schedule/0__28_route_averages__name_stanrta-schedule.ipynb +++ b/portfolio/route_speeds/name_stanrta-schedule/0__28_route_averages__name_stanrta-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5cf1e67b4b0b6a3ce1be5d939839c38cb63c31186bda9e5f5128adb36ee35f86 -size 880353 +oid sha256:5d6d1feead4130aea9d31520051a93d7f90ce2b71cc6063d01a0441fa0dc0c39 +size 282728 diff --git a/portfolio/route_speeds/name_tahoe-transportation-district-gmv-schedule/0__28_route_averages__name_tahoe-transportation-district-gmv-schedule.ipynb b/portfolio/route_speeds/name_tahoe-transportation-district-gmv-schedule/0__28_route_averages__name_tahoe-transportation-district-gmv-schedule.ipynb index 20ab4404c..0f997d91e 100644 --- a/portfolio/route_speeds/name_tahoe-transportation-district-gmv-schedule/0__28_route_averages__name_tahoe-transportation-district-gmv-schedule.ipynb +++ b/portfolio/route_speeds/name_tahoe-transportation-district-gmv-schedule/0__28_route_averages__name_tahoe-transportation-district-gmv-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:155296e771a688ee12db582e585ba230f5a26f56be8fe9319dd089d4b4a547fd -size 70930 +oid sha256:c73e9bfe2b5422a2715485b13c7397b4d85dcc5e24bd82b9fdcc13174a0f4e0c +size 43608 diff --git a/portfolio/route_speeds/name_torrance-schedule/0__28_route_averages__name_torrance-schedule.ipynb b/portfolio/route_speeds/name_torrance-schedule/0__28_route_averages__name_torrance-schedule.ipynb index 2f6f8bf01..285ecc302 100644 --- a/portfolio/route_speeds/name_torrance-schedule/0__28_route_averages__name_torrance-schedule.ipynb +++ b/portfolio/route_speeds/name_torrance-schedule/0__28_route_averages__name_torrance-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f313e495995cf85e35b06d7d9219d7bff55f6cea97468b63d3a8be7734f73ff7 -size 588949 +oid sha256:389118a018b1a238254039a0267253397316069c8e3ba4c1d238fa1ec0badfa4 +size 97404 diff --git a/portfolio/route_speeds/name_turlock-schedule/0__28_route_averages__name_turlock-schedule.ipynb b/portfolio/route_speeds/name_turlock-schedule/0__28_route_averages__name_turlock-schedule.ipynb index f51ae7b47..52277f354 100644 --- a/portfolio/route_speeds/name_turlock-schedule/0__28_route_averages__name_turlock-schedule.ipynb +++ b/portfolio/route_speeds/name_turlock-schedule/0__28_route_averages__name_turlock-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:35790cf859c2d9934aafc5fac9b7d8d76460a7eaf503d8ecdc6822e4c094f52b -size 267478 +oid sha256:8bca363cb664ce47fa5470cc90282bd3395dce32892eaa69207cfdb0cb2b7ef7 +size 24802 diff --git a/portfolio/route_speeds/name_unitrans-schedule/0__28_route_averages__name_unitrans-schedule.ipynb b/portfolio/route_speeds/name_unitrans-schedule/0__28_route_averages__name_unitrans-schedule.ipynb deleted file mode 100644 index 8948c9577..000000000 --- a/portfolio/route_speeds/name_unitrans-schedule/0__28_route_averages__name_unitrans-schedule.ipynb +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:16a527f8d4fd275e22bdd2f4432f3a8379a49c9d90fa6ad7bcac6cf6bc1a1f10 -size 692276 diff --git a/portfolio/route_speeds/name_vctc-gmv-schedule/0__28_route_averages__name_vctc-gmv-schedule.ipynb b/portfolio/route_speeds/name_vctc-gmv-schedule/0__28_route_averages__name_vctc-gmv-schedule.ipynb index e0bf762ae..f20ecba18 100644 --- a/portfolio/route_speeds/name_vctc-gmv-schedule/0__28_route_averages__name_vctc-gmv-schedule.ipynb +++ b/portfolio/route_speeds/name_vctc-gmv-schedule/0__28_route_averages__name_vctc-gmv-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6f5769835e8e6f24a5a2bdeb8951c194c15b70ccf4848d0ce0d4216607241dc4 -size 1590988 +oid sha256:bc38969a3d30bfe9004278d335f6fbd61d46bc4dbed1a90b37fd170428ef2f35 +size 643109 diff --git a/portfolio/route_speeds/name_victor-valley-gmv-schedule/0__28_route_averages__name_victor-valley-gmv-schedule.ipynb b/portfolio/route_speeds/name_victor-valley-gmv-schedule/0__28_route_averages__name_victor-valley-gmv-schedule.ipynb index 7c4e8b29a..9d892b844 100644 --- a/portfolio/route_speeds/name_victor-valley-gmv-schedule/0__28_route_averages__name_victor-valley-gmv-schedule.ipynb +++ b/portfolio/route_speeds/name_victor-valley-gmv-schedule/0__28_route_averages__name_victor-valley-gmv-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4e5bb89826eae9ceb40acc428be51d4c40be4e88af90161e940acd517d839911 -size 1525400 +oid sha256:767627fb7e0e0e789df1096e79a5ced12e4ede4b59a504296d86b39b3b83021e +size 463597 diff --git a/portfolio/route_speeds/name_visalia-schedule/0__28_route_averages__name_visalia-schedule.ipynb b/portfolio/route_speeds/name_visalia-schedule/0__28_route_averages__name_visalia-schedule.ipynb index 0f4b3bb4c..2b01dfdf0 100644 --- a/portfolio/route_speeds/name_visalia-schedule/0__28_route_averages__name_visalia-schedule.ipynb +++ b/portfolio/route_speeds/name_visalia-schedule/0__28_route_averages__name_visalia-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8b65d6f9ea8bd244925b4babc56029a837856ee02dc5b90f70a575ea25e49193 -size 420974 +oid sha256:7bc3f16e5b924a4eeb3c92231e81b5971ce9d19273d721ffcaa660743b99f895 +size 64924 diff --git a/portfolio/route_speeds/name_yolobus-schedule/0__28_route_averages__name_yolobus-schedule.ipynb b/portfolio/route_speeds/name_yolobus-schedule/0__28_route_averages__name_yolobus-schedule.ipynb index 9fb214610..69e430173 100644 --- a/portfolio/route_speeds/name_yolobus-schedule/0__28_route_averages__name_yolobus-schedule.ipynb +++ b/portfolio/route_speeds/name_yolobus-schedule/0__28_route_averages__name_yolobus-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d17ac7617d1a5b7e828364a3788e42a3aa4cb23aabf94c8ae7a5c8e5615a9c89 -size 389821 +oid sha256:5d4ac327de40f23e85288cc59666bc2b4e51c902e0dd7eceb6d04e98702e6a12 +size 254488 diff --git a/portfolio/sites/route_speeds.yml b/portfolio/sites/route_speeds.yml index e384e531f..20328090a 100644 --- a/portfolio/sites/route_speeds.yml +++ b/portfolio/sites/route_speeds.yml @@ -44,9 +44,6 @@ parts: - caption: Bay Area 511 Muni Schedule params: name: Bay Area 511 Muni Schedule - - caption: Bay Area 511 Petaluma Schedule - params: - name: Bay Area 511 Petaluma Schedule - caption: Bay Area 511 SamTrans Schedule params: name: Bay Area 511 SamTrans Schedule @@ -56,9 +53,6 @@ parts: - caption: Bay Area 511 Santa Clara Transit Schedule params: name: Bay Area 511 Santa Clara Transit Schedule - - caption: Bay Area 511 Santa Rosa CityBus Schedule - params: - name: Bay Area 511 Santa Rosa CityBus Schedule - caption: Bay Area 511 SolTrans Schedule params: name: Bay Area 511 SolTrans Schedule @@ -71,9 +65,6 @@ parts: - caption: Bay Area 511 Tri-Valley Wheels Schedule params: name: Bay Area 511 Tri-Valley Wheels Schedule - - caption: Bay Area 511 Union City Transit Schedule - params: - name: Bay Area 511 Union City Transit Schedule - caption: Bay Area 511 Vine Transit Schedule params: name: Bay Area 511 Vine Transit Schedule @@ -83,9 +74,6 @@ parts: - caption: Beach Cities GMV Schedule params: name: Beach Cities GMV Schedule - - caption: Bear Schedule - params: - name: Bear Schedule - caption: Beaumont Pass Schedule params: name: Beaumont Pass Schedule @@ -167,9 +155,6 @@ parts: - caption: OmniTrans Schedule params: name: OmniTrans Schedule - - caption: Pasadena Schedule - params: - name: Pasadena Schedule - caption: PresidiGo Schedule params: name: PresidiGo Schedule @@ -221,9 +206,6 @@ parts: - caption: Turlock Schedule params: name: Turlock Schedule - - caption: Unitrans Schedule - params: - name: Unitrans Schedule - caption: VCTC GMV Schedule params: name: VCTC GMV Schedule @@ -236,8 +218,5 @@ parts: - caption: Yolobus Schedule params: name: Yolobus Schedule - - caption: eTrans Schedule - params: - name: eTrans Schedule readme: ./rt_segment_speeds/README.md title: Average Speeds by Transit Operator Exploratory Charts diff --git a/rt_segment_speeds/28_route_averages.ipynb b/rt_segment_speeds/28_route_averages.ipynb index 8c448db84..181071334 100644 --- a/rt_segment_speeds/28_route_averages.ipynb +++ b/rt_segment_speeds/28_route_averages.ipynb @@ -126,14 +126,19 @@ " \n", " snakecase_ycol = y_col.replace('_', ' ')\n", " \n", - " chart = (alt.Chart(df)\n", - " .mark_bar(width=15)\n", - " .encode(\n", + " #https://stackoverflow.com/questions/26454649/python-round-up-to-the-nearest-ten\n", + " max_speed = round(df.speed_mph.max(), -1)\n", + " \n", + " chart = (\n", + " alt.Chart(df)\n", + " #.mark_bar(width=15)\n", + " .mark_line()\n", + " .encode(\n", " x = alt.X(\"yearmonthdate(service_date):O\", title = \"Date\",\n", " axis = alt.Axis(format = '%b %Y')\n", " ),\n", " y = alt.Y(f\"{y_col}:Q\", title = snakecase_ycol,\n", - " #scale = alt.Scale(domain=[0, 50])\n", + " scale = alt.Scale(domain=[0, max(max_speed, 45)])\n", " ),\n", " color = alt.Color(\n", " \"time_period:N\", title = \"\",\n", @@ -142,8 +147,8 @@ " tooltip = [\"route_id\", \"direction_id\", \n", " \"time_period\", y_col]\n", " ).facet(\n", - " column = alt.Column(\"time_period:O\", title=\"Time Period\"),\n", - " row = alt.Row(\"direction_id:N\", title=\"Direction\")\n", + " column = alt.Column(\"direction_id:N\", title=\"Direction\"),\n", + " row = alt.Row(\"route_id:O\", title=\"Route\")\n", " ).interactive()\n", " )\n", " \n", @@ -201,12 +206,14 @@ "metadata": {}, "outputs": [], "source": [ + "'''\n", "chart = dual_chart(\n", " df, \n", " control_field = \"route_id\", \n", " y_col = \"speed_mph\"\n", ")\n", - "\n", + "'''\n", + "chart = base_chart(df, \"speed_mph\")\n", "chart" ] }, diff --git a/rt_segment_speeds/segment_speed_utils/project_vars.py b/rt_segment_speeds/segment_speed_utils/project_vars.py index 4cd0ea760..8f3c57406 100644 --- a/rt_segment_speeds/segment_speed_utils/project_vars.py +++ b/rt_segment_speeds/segment_speed_utils/project_vars.py @@ -9,19 +9,11 @@ SHARED_GCS = f"{GCS_FILE_PATH}shared_data/" PUBLIC_GCS = "gs://calitp-publish-data-analysis/" -analysis_date = rt_dates.DATES["jan2024"] +analysis_date = rt_dates.DATES["feb2024"] -days = ["a", "b", "", "c", "d", "e", "f"] -months = [ - "dec", - #"nov", "oct", "sep", - #"aug", "jul", "jun", - #"may", "apr", "mar" -] - -analysis_date_list = [ - rt_dates.DATES[f"{m}2023"] for m in months -] +oct_week = rt_dates.get_week("oct2023", exclude_wed=True) +apr_week = rt_dates.get_week("apr2023", exclude_wed=True) +analysis_date_list = [analysis_date] PROJECT_CRS = "EPSG:3310" CONFIG_PATH = "./config.yml" From 907e6c13fe8631aed4eaa58ab1a1ed06ffb58522 Mon Sep 17 00:00:00 2001 From: tiffanychu90 Date: Wed, 21 Feb 2024 21:20:51 +0000 Subject: [PATCH 11/15] move where filtering is applied --- rt_segment_speeds/29_speed_cutoffs.ipynb | 24 ++++++++- rt_segment_speeds/scripts/average_speeds.py | 57 ++++++++------------- rt_segment_speeds/scripts/config.yml | 2 +- 3 files changed, 46 insertions(+), 37 deletions(-) diff --git a/rt_segment_speeds/29_speed_cutoffs.ipynb b/rt_segment_speeds/29_speed_cutoffs.ipynb index 6386a7fdd..009a7dd73 100644 --- a/rt_segment_speeds/29_speed_cutoffs.ipynb +++ b/rt_segment_speeds/29_speed_cutoffs.ipynb @@ -192,13 +192,35 @@ "new_df[new_df.speed_mph <=5].speed_mph.hist(bins = range(0, 6, 1))" ] }, + { + "cell_type": "markdown", + "id": "f1821138-273a-4cb6-a962-5c300e61362a", + "metadata": {}, + "source": [ + "## Sanity check: number of routes should be fairly consistent across aggregation" + ] + }, { "cell_type": "code", "execution_count": null, "id": "1704b39b-be48-4836-adf5-8fd52d00c434", "metadata": {}, "outputs": [], - "source": [] + "source": [ + "for d in [\"stage4\", \"trip_speeds_single_summary\", \n", + " #\"shape_stop_single_segment\", \n", + " \"route_dir_single_segment\", \"route_dir_single_summary\"\n", + " ]:\n", + " FILE = dict_inputs[d]\n", + " df = pd.read_parquet(\n", + " f\"{SEGMENT_GCS}{FILE}_{analysis_date}.parquet\",\n", + " columns = [\"schedule_gtfs_dataset_key\", \"route_id\", \"direction_id\"]\n", + " ).drop_duplicates()\n", + " \n", + " print(FILE)\n", + " print(df.shape)\n", + " " + ] } ], "metadata": { diff --git a/rt_segment_speeds/scripts/average_speeds.py b/rt_segment_speeds/scripts/average_speeds.py index 8da4be4bd..217744990 100644 --- a/rt_segment_speeds/scripts/average_speeds.py +++ b/rt_segment_speeds/scripts/average_speeds.py @@ -70,9 +70,7 @@ def import_segments( on shape_array_key and stop_pair. For rt_stop_times, import all trips with their segments, and merge on trip_instance_key and stop_pair. - """ - SEGMENT_FILE = "segment_options/stop_segments" - + """ keep_cols = [ "shape_array_key", "stop_pair", "schedule_gtfs_dataset_key", "route_id", "direction_id", @@ -80,30 +78,18 @@ def import_segments( ] if segment_type == "stop_segments": + SEGMENT_FILE = "segment_options/shape_stop_segments" - subset_trips = pd.concat([ - pd.read_parquet( - f"{SEGMENT_GCS}segment_options/" - f"shape_stop_segments_{analysis_date}.parquet", - columns = ["st_trip_instance_key"] - ) for analysis_date in analysis_date_list - ], axis=0, ignore_index=True).st_trip_instance_key.unique() - - gdf = pd.concat([ - gpd.read_parquet( - f"{SEGMENT_GCS}{SEGMENT_FILE}_{analysis_date}.parquet", - columns = keep_cols, - filters = [[("trip_instance_key", "in", subset_trips)]], - ).to_crs(WGS84) for analysis_date in analysis_date_list - ], axis=0, ignore_index=True).drop_duplicates(subset=keep_cols) elif segment_type == "rt_stop_times": - gdf = pd.concat([ - gpd.read_parquet( - f"{SEGMENT_GCS}{SEGMENT_FILE}_{analysis_date}.parquet", - columns = keep_cols, - ).to_crs(WGS84) for analysis_date in analysis_date_list - ], axis=0, ignore_index=True).drop_duplicates(subset=keep_cols) + SEGMENT_FILE = "segment_options/stop_segments" + + gdf = pd.concat([ + gpd.read_parquet( + f"{SEGMENT_GCS}{SEGMENT_FILE}_{analysis_date}.parquet", + columns = keep_cols, + ).to_crs(WGS84) for analysis_date in analysis_date_list + ], axis=0, ignore_index=True).drop_duplicates(subset=keep_cols) return gdf @@ -120,9 +106,6 @@ def concatenate_trip_segment_speeds( """ SPEED_FILE = dict_inputs["stage4"] MAX_SPEED = dict_inputs["max_speed"] - METERS_CUTOFF = dict_inputs["min_meters_elapsed"] - MAX_TRIP_SECONDS = dict_inputs["max_trip_minutes"] * 60 - MIN_TRIP_SECONDS = dict_inputs["min_trip_minutes"] * 60 df = pd.concat([ pd.read_parquet( @@ -132,12 +115,7 @@ def concatenate_trip_segment_speeds( "trip_instance_key", "speed_mph", "meters_elapsed", "sec_elapsed", "time_of_day"]), - filters = [[ - ("speed_mph", "<=", MAX_SPEED), - ("meters_elapsed", ">=", METERS_CUTOFF), - ("sec_elapsed", ">=", MIN_TRIP_SECONDS), - ("sec_elapsed", "<=", MAX_TRIP_SECONDS) - ]] + filters = [[("speed_mph", "<=", MAX_SPEED)]] ).assign( service_date = pd.to_datetime(analysis_date) ) for analysis_date in analysis_date_list], @@ -162,6 +140,10 @@ def single_day_averages(analysis_date: str, dict_inputs: dict): TRIP_FILE = dict_inputs["trip_speeds_single_summary"] ROUTE_DIR_FILE = dict_inputs["route_dir_single_summary"] + METERS_CUTOFF = dict_inputs["min_meters_elapsed"] + MAX_TRIP_SECONDS = dict_inputs["max_trip_minutes"] * 60 + MIN_TRIP_SECONDS = dict_inputs["min_trip_minutes"] * 60 + start = datetime.datetime.now() df = concatenate_trip_segment_speeds([analysis_date], dict_inputs) @@ -243,13 +225,18 @@ def single_day_averages(analysis_date: str, dict_inputs: dict): trip_avg.to_parquet( f"{SEGMENT_GCS}{TRIP_FILE}_{analysis_date}.parquet" ) - del trip_avg t3 = datetime.datetime.now() logger.info(f"trip avg {t3 - t2}") + trip_avg_filtered = trip_avg[ + (trip_avg.meters_elapsed >= METERS_CUTOFF) & + (trip_avg.sec_elapsed >= MIN_TRIP_SECONDS) & + (trip_avg.sec_elapsed <= MAX_TRIP_SECONDS) + ].trip_instance_key.unique() + route_dir_avg = segment_calcs.weighted_average_speeds_across_segments( - df, + df[df.trip_instance_key.isin(trip_avg_filtered)], OPERATOR_COLS + ROUTE_DIR_COLS ).pipe( merge_operator_identifiers, [analysis_date] diff --git a/rt_segment_speeds/scripts/config.yml b/rt_segment_speeds/scripts/config.yml index 6de1d3a68..e16ce749f 100644 --- a/rt_segment_speeds/scripts/config.yml +++ b/rt_segment_speeds/scripts/config.yml @@ -3,9 +3,9 @@ stop_segments: stage2: "nearest/nearest_vp_shape_segments" stage3: "stop_arrivals" stage4: "speeds_stop_segments" + trip_speeds_single_summary: "rollup_singleday/speeds_trip" shape_stop_single_segment: "rollup_singleday/speeds_shape_stop_segments" route_dir_single_segment: "rollup_singleday/speeds_route_dir_segments" - trip_speeds_single_summary: "rollup_singleday/speeds_trip" route_dir_single_summary: "rollup_singleday/speeds_route_dir" route_dir_multi_segment: "rollup_multiday/speeds_route_dir_segments" route_dir_multi_summary: "rollup_multiday/speeds_route_dir" From 46b1756d75b81871338a4ec96e9817b328c3532a Mon Sep 17 00:00:00 2001 From: tiffanychu90 Date: Wed, 21 Feb 2024 21:21:06 +0000 Subject: [PATCH 12/15] (remove): old script for erroneous interpolation results --- .../scripts/handle_common_errors.py | 55 ------------------- 1 file changed, 55 deletions(-) delete mode 100644 rt_segment_speeds/scripts/handle_common_errors.py diff --git a/rt_segment_speeds/scripts/handle_common_errors.py b/rt_segment_speeds/scripts/handle_common_errors.py deleted file mode 100644 index d5cbd376c..000000000 --- a/rt_segment_speeds/scripts/handle_common_errors.py +++ /dev/null @@ -1,55 +0,0 @@ -""" -Tag rows where we know errors are occurring when -we find the nearest vp. - -Error 1: nearest_vp_idx = subseq_vp_idx. -We cannot interpolate if the 2 endpoints are the same points. - -Error 2: change from the prior vp_idx value is negative. -We expect monotonically increasing vp_idx across stops, -which then translate to arrival times that are increasing. - -For loop/inlining shapes, esp near origin -(which is also destination), we can select a vp that's happening -at the end of the trip and attach to the origin stop. -This results in an arrival time for stop 1 that occurs after arrival time -for stop 2. -This happens because vp_primary_direction might be Unknown - -""" -import datetime -import pandas as pd - -from segment_speed_utils import array_utils, helpers -from segment_speed_utils.project_vars import SEGMENT_GCS, PROJECT_CRS, CONFIG_PATH -from shared_utils import rt_dates - - -if __name__ == "__main__": - - analysis_date = rt_dates.DATES["sep2023"] - STOP_SEG_DICT = helpers.get_parameters(CONFIG_PATH, "stop_segments") - - NEAREST_VP = f"{STOP_SEG_DICT['stage2']}_{analysis_date}" - - start = datetime.datetime.now() - - df = pd.read_parquet( - f"{SEGMENT_GCS}projection/{NEAREST_VP}.parquet" - ) - - WINDOW = 3 - df = array_utils.rolling_window_make_array( - df, - window = WINDOW, rolling_col = "nearest_vp_idx" - ) - df = array_utils.rolling_window_make_array( - df, - window = WINDOW, rolling_col = "stop_meters" - ) - - df.to_parquet( - f"{SEGMENT_GCS}projection/nearest_vp_error_{analysis_date}.parquet") - - end = datetime.datetime.now() - print(f"execution time: {end - start}") \ No newline at end of file From 32c5be99e45cff11eef1ab9642e4072934b377a6 Mon Sep 17 00:00:00 2001 From: tiffanychu90 Date: Wed, 21 Feb 2024 21:29:06 +0000 Subject: [PATCH 13/15] (segment_speed_utils): add concatenation function --- .../scripts/publish_public_gcs.py | 41 ++-------------- .../segment_speed_utils/time_series_utils.py | 49 +++++++++++++++++++ rt_segment_speeds/setup.py | 2 +- 3 files changed, 55 insertions(+), 37 deletions(-) create mode 100644 rt_segment_speeds/segment_speed_utils/time_series_utils.py diff --git a/rt_segment_speeds/scripts/publish_public_gcs.py b/rt_segment_speeds/scripts/publish_public_gcs.py index 906ef6521..e0bc5ae65 100644 --- a/rt_segment_speeds/scripts/publish_public_gcs.py +++ b/rt_segment_speeds/scripts/publish_public_gcs.py @@ -2,56 +2,25 @@ Grab all files in the rollup """ import datetime -import gcsfs import pandas as pd -from dask import delayed, compute -from segment_speed_utils import helpers -from segment_speed_utils.project_vars import SEGMENT_GCS, PUBLIC_GCS, CONFIG_PATH +from segment_speed_utils import time_series_utils +from segment_speed_utils.project_vars import SEGMENT_GCS, PUBLIC_GCS -fs = gcsfs.GCSFileSystem() - -def concatenate_datasets_across_months(dataset_name: str) -> pd.DataFrame: - list_of_files = fs.glob(f"{SEGMENT_GCS}rollup/{dataset_name}_*") - print(list_of_files) - - dfs = [ - pd.read_parquet(f"gs://{d}").drop( - columns = "schedule_gtfs_dataset_key" - ) for d in list_of_files - ] - - if "shape" in dataset_name: - sort_cols = ["shape_id", "stop_sequence"] - elif "route" in dataset_name: - sort_cols = ["route_id", "direction_id", "stop_pair"] - - df = (pd.concat(dfs, - axis=0, ignore_index=True) - .sort_values(["organization_name", - "year", "month", "peak_offpeak", "weekday_weekend", - ] + sort_cols) - .reset_index(drop=True) - ) - - return df if __name__ == "__main__": STOP_SEG_DICT = helpers.get_parameters(CONFIG_PATH, "stop_segments") - - + DATASETS = [ - STOP_SEG_DICT["shape_rollup"], - STOP_SEG_DICT["route_direction_rollup"] + STOP_SEG_DICT["route_dir_single_segment"] ] for d in DATASETS: start = datetime.datetime.now() - df = delayed(concatenate_datasets_across_months)(d) - df = compute(df)[0] + df = time_series_utils.concatenate_datasets_across_months(d) df.to_parquet(f"{PUBLIC_GCS}speeds/{d}.parquet") end = datetime.datetime.now() diff --git a/rt_segment_speeds/segment_speed_utils/time_series_utils.py b/rt_segment_speeds/segment_speed_utils/time_series_utils.py new file mode 100644 index 000000000..17ed387eb --- /dev/null +++ b/rt_segment_speeds/segment_speed_utils/time_series_utils.py @@ -0,0 +1,49 @@ +""" +Functions for creating time-series data +by concatenating aggregated data across multiple months. +""" +import datetime +import geopandas as gpd +import gcsfs +import pandas as pd + +from dask import delayed, compute +from pathlib import Path +from typing import Literal + +from segment_speed_utils.project_vars import SEGMENT_GCS + +fs = gcsfs.GCSFileSystem() + +OPERATOR_COLS = ["schedule_gtfs_dataset_key", "name", + "organization_source_record_id", "organization_name", + "base64_url", "caltrans_district"] +STOP_PAIR_COLS = ["stop_pair"] +ROUTE_DIR_COLS = ["route_id", "direction_id"] + + +def concatenate_datasets_across_months( + dataset_name: Literal["speeds_route_dir_segments", "speeds_route_dir"] +) -> pd.DataFrame: + """ + Concatenate parquets across all months of available data. + """ + list_of_files = fs.glob(f"{SEGMENT_GCS}rollup_singleday/{dataset_name}_*") + + dates = [Path(i).stem.split(f"{dataset_name}_")[1] for i in list_of_files] + + + df = delayed(pd.concat)([ + gpd.read_parquet( + f"{SEGMENT_GCS}rollup_singleday/{dataset_name}_{d}.parquet" + ).assign( + service_date = pd.to_datetime(d) + ) for d in dates + ], axis=0, ignore_index = True + ).sort_values( + ["organization_name", "service_date"] + ROUTE_DIR_COLS + ).reset_index(drop=True) + + df = compute(df)[0] + + return df \ No newline at end of file diff --git a/rt_segment_speeds/setup.py b/rt_segment_speeds/setup.py index 91d733b7d..6021e31cc 100644 --- a/rt_segment_speeds/setup.py +++ b/rt_segment_speeds/setup.py @@ -3,7 +3,7 @@ setup( name="segment_speed_utils", packages=find_packages(), - version="1.3.2", + version="1.4.0", description="Utility functions for GTFS RT segment speeds", author="Cal-ITP", license="Apache", From 29c478b39ef9b7e843da17523a7f0ae4e9ceb3b9 Mon Sep 17 00:00:00 2001 From: tiffanychu90 Date: Wed, 21 Feb 2024 23:49:25 +0000 Subject: [PATCH 14/15] fix how delayed dfs are concatenated --- rt_segment_speeds/scripts/average_speeds.py | 47 ++++++++++++------- .../scripts/publish_public_gcs.py | 4 +- .../segment_speed_utils/__init__.py | 2 + .../segment_speed_utils/time_series_utils.py | 21 +++++---- 4 files changed, 49 insertions(+), 25 deletions(-) diff --git a/rt_segment_speeds/scripts/average_speeds.py b/rt_segment_speeds/scripts/average_speeds.py index 217744990..9a616f291 100644 --- a/rt_segment_speeds/scripts/average_speeds.py +++ b/rt_segment_speeds/scripts/average_speeds.py @@ -84,12 +84,18 @@ def import_segments( elif segment_type == "rt_stop_times": SEGMENT_FILE = "segment_options/stop_segments" - gdf = pd.concat([ - gpd.read_parquet( + dfs = [ + delayed(gpd.read_parquet)( f"{SEGMENT_GCS}{SEGMENT_FILE}_{analysis_date}.parquet", columns = keep_cols, ).to_crs(WGS84) for analysis_date in analysis_date_list - ], axis=0, ignore_index=True).drop_duplicates(subset=keep_cols) + ] + + gdf = delayed(pd.concat)( + dfs, axis=0, ignore_index=True + ).drop_duplicates(subset=keep_cols).reset_index(drop=True) + + gdf = compute(gdf)[0] return gdf @@ -107,8 +113,8 @@ def concatenate_trip_segment_speeds( SPEED_FILE = dict_inputs["stage4"] MAX_SPEED = dict_inputs["max_speed"] - df = pd.concat([ - pd.read_parquet( + dfs = [ + delayed(pd.read_parquet)( f"{SEGMENT_GCS}{SPEED_FILE}_{analysis_date}.parquet", columns = (OPERATOR_COLS + SHAPE_STOP_COLS + STOP_PAIR_COLS + ROUTE_DIR_COLS + [ @@ -118,14 +124,19 @@ def concatenate_trip_segment_speeds( filters = [[("speed_mph", "<=", MAX_SPEED)]] ).assign( service_date = pd.to_datetime(analysis_date) - ) for analysis_date in analysis_date_list], - axis=0, ignore_index = True + ) for analysis_date in analysis_date_list + ] + + df = delayed(pd.concat)( + dfs, axis=0, ignore_index = True ).pipe( gtfs_schedule_wrangling.add_peak_offpeak_column ).pipe( gtfs_schedule_wrangling.add_weekday_weekend_column ) + df = compute(df)[0] + return df @@ -296,26 +307,30 @@ def multi_day_averages(analysis_date_list: list, dict_inputs: dict): OPERATOR_COLS + ROUTE_DIR_COLS + STOP_PAIR_COLS + ["weekday_weekend"] ) - route_dir_segments = compute(route_dir_segments)[0] + #route_dir_segments = compute(route_dir_segments)[0] - route_dir_segments = time_helpers.add_time_span_columns( + route_dir_segments = delayed(time_helpers.add_time_span_columns)( route_dir_segments, time_span_num ).pipe( merge_operator_identifiers, analysis_date_list ) - segment_geom = (import_segments(analysis_date_list, "stop_segments") + segment_geom = delayed(import_segments(analysis_date_list, "stop_segments") .drop(columns = "shape_array_key") .drop_duplicates() ) - col_order = [c for c in route_dir_segments.columns] - route_dir_segments = pd.merge( + route_dir_segments = delayed(pd.merge)( segment_geom, route_dir_segments, on = OPERATOR_COLS + ROUTE_DIR_COLS + STOP_PAIR_COLS, - ).reset_index(drop=True).reindex( + ).reset_index(drop=True) + + route_dir_segments = compute(route_dir_segments)[0] + col_order = [c for c in route_dir_segments.columns] + + route_dir_segments = route_dir_segments.reindex( columns = col_order + ["geometry"] ) @@ -412,7 +427,7 @@ def stage_open_data_exports(analysis_date: str, dict_inputs: dict): level="INFO") STOP_SEG_DICT = helpers.get_parameters(CONFIG_PATH, "stop_segments") - + ''' for analysis_date in analysis_date_list: start = datetime.datetime.now() @@ -423,8 +438,8 @@ def stage_open_data_exports(analysis_date: str, dict_inputs: dict): end = datetime.datetime.now() logger.info(f"average rollups for {analysis_date}: {end - start}") - ''' + for one_week in [rt_dates.oct_week, rt_dates.apr_week]: start = datetime.datetime.now() @@ -432,4 +447,4 @@ def stage_open_data_exports(analysis_date: str, dict_inputs: dict): end = datetime.datetime.now() logger.info(f"average rollups for {one_week}: {end - start}") - ''' \ No newline at end of file + \ No newline at end of file diff --git a/rt_segment_speeds/scripts/publish_public_gcs.py b/rt_segment_speeds/scripts/publish_public_gcs.py index e0bc5ae65..94f919a29 100644 --- a/rt_segment_speeds/scripts/publish_public_gcs.py +++ b/rt_segment_speeds/scripts/publish_public_gcs.py @@ -4,12 +4,14 @@ import datetime import pandas as pd -from segment_speed_utils import time_series_utils +from segment_speed_utils import helpers, time_series_utils from segment_speed_utils.project_vars import SEGMENT_GCS, PUBLIC_GCS if __name__ == "__main__": + from segment_speed_utils.project_vars import CONFIG_PATH + STOP_SEG_DICT = helpers.get_parameters(CONFIG_PATH, "stop_segments") DATASETS = [ diff --git a/rt_segment_speeds/segment_speed_utils/__init__.py b/rt_segment_speeds/segment_speed_utils/__init__.py index dbbab68f7..6fbc798eb 100644 --- a/rt_segment_speeds/segment_speed_utils/__init__.py +++ b/rt_segment_speeds/segment_speed_utils/__init__.py @@ -6,6 +6,7 @@ project_vars, segment_calcs, time_helpers, + time_series_utils, vp_transform, wrangle_shapes, ) @@ -18,6 +19,7 @@ "project_vars", "segment_calcs", "time_helpers", + "time_series_utils", "vp_transform", "wrangle_shapes", ] \ No newline at end of file diff --git a/rt_segment_speeds/segment_speed_utils/time_series_utils.py b/rt_segment_speeds/segment_speed_utils/time_series_utils.py index 17ed387eb..21c7e8a8b 100644 --- a/rt_segment_speeds/segment_speed_utils/time_series_utils.py +++ b/rt_segment_speeds/segment_speed_utils/time_series_utils.py @@ -28,22 +28,27 @@ def concatenate_datasets_across_months( """ Concatenate parquets across all months of available data. """ - list_of_files = fs.glob(f"{SEGMENT_GCS}rollup_singleday/{dataset_name}_*") - - dates = [Path(i).stem.split(f"{dataset_name}_")[1] for i in list_of_files] + list_of_files = fs.glob(f"{SEGMENT_GCS}{dataset_name}_*") + # If the dataset name includes a folder, parse that away + dataset_stem = Path(dataset).stem + + dates = [Path(i).stem.split(f"{dataset_stem}_")[1] for i in list_of_files] - df = delayed(pd.concat)([ - gpd.read_parquet( - f"{SEGMENT_GCS}rollup_singleday/{dataset_name}_{d}.parquet" + dfs = [ + delayed(gpd.read_parquet)( + f"{SEGMENT_GCS}{dataset_name}_{d}.parquet" ).assign( service_date = pd.to_datetime(d) ) for d in dates - ], axis=0, ignore_index = True + ] + + df = delayed(pd.concat)( + dfs, axis=0, ignore_index=True ).sort_values( ["organization_name", "service_date"] + ROUTE_DIR_COLS ).reset_index(drop=True) - df = compute(df)[0] + df = compute(df)[0] return df \ No newline at end of file From 7da17390d818570b3799b1c7fc39c58ed932a36f Mon Sep 17 00:00:00 2001 From: tiffanychu90 Date: Thu, 22 Feb 2024 01:07:04 +0000 Subject: [PATCH 15/15] deploy portfolio --- portfolio/route_speeds/_toc.yml | 7 +++++++ ...pe-valley-transit-authority-schedule.ipynb | 4 ++-- ...route_averages__name_avalon-schedule.ipynb | 4 ++-- ...averages__name_banning-pass-schedule.ipynb | 4 ++-- ...ame_bay-area-511-ac-transit-schedule.ipynb | 4 ++-- ...ages__name_bay-area-511-ace-schedule.ipynb | 4 ++-- ..._name_bay-area-511-caltrain-schedule.ipynb | 4 ++-- ...y-area-511-capitol-corridor-schedule.ipynb | 4 ++-- ...-area-511-county-connection-schedule.ipynb | 4 ++-- ...-area-511-dumbarton-express-schedule.ipynb | 4 ++-- ...airfield-and-suisun-transit-schedule.ipynb | 4 ++-- ...rea-511-golden-gate-transit-schedule.ipynb | 4 ++-- ...es__name_bay-area-511-marin-schedule.ipynb | 4 ++-- ...ges__name_bay-area-511-muni-schedule.ipynb | 4 ++-- ...ges__name_bay-area-511-mvgo-schedule.ipynb | 4 ++-- ..._name_bay-area-511-petaluma-schedule.ipynb | 3 +++ ..._name_bay-area-511-samtrans-schedule.ipynb | 4 ++-- ...511-san-francisco-bay-ferry-schedule.ipynb | 4 ++-- ...rea-511-santa-clara-transit-schedule.ipynb | 4 ++-- ...area-511-santa-rosa-citybus-schedule.ipynb | 3 +++ ..._name_bay-area-511-soltrans-schedule.ipynb | 4 ++-- ...oma-marin-area-rail-transit-schedule.ipynb | 4 ++-- ...name_bay-area-511-tri-delta-schedule.ipynb | 4 ++-- ...-area-511-tri-valley-wheels-schedule.ipynb | 4 ++-- ...area-511-union-city-transit-schedule.ipynb | 3 +++ ...e_bay-area-511-vine-transit-schedule.ipynb | 4 ++-- ...__name_bay-area-511-westcat-schedule.ipynb | 4 ++-- ...ages__name_beach-cities-gmv-schedule.ipynb | 4 ++-- ...8_route_averages__name_bear-schedule.ipynb | 3 +++ ...verages__name_beaumont-pass-schedule.ipynb | 4 ++-- ...averages__name_big-blue-bus-schedule.ipynb | 4 ++-- ...ute_averages__name_bruinbus-schedule.ipynb | 4 ++-- ...oute_averages__name_burbank-schedule.ipynb | 4 ++-- ...ute_averages__name_commerce-schedule.ipynb | 4 ++-- ..._averages__name_culver-city-schedule.ipynb | 4 ++-- ..._name_desert-roadrunner-gmv-schedule.ipynb | 4 ++-- ...erages__name_eastern-sierra-schedule.ipynb | 4 ++-- ...te_averages__name_elk-grove-schedule.ipynb | 4 ++-- ...route_averages__name_etrans-schedule.ipynb | 3 +++ ...route_averages__name_fresno-schedule.ipynb | 4 ++-- ...28_route_averages__name_get-schedule.ipynb | 4 ++-- ...ute_averages__name_humboldt-schedule.ipynb | 4 ++-- ..._route_averages__name_kings-schedule.ipynb | 4 ++-- ...route_averages__name_la-dot-schedule.ipynb | 4 ++-- ...averages__name_la-metro-bus-schedule.ipynb | 4 ++-- ...verages__name_la-metro-rail-schedule.ipynb | 4 ++-- ...8_route_averages__name_lake-schedule.ipynb | 4 ++-- ...ges__name_lawndale-beat-gmv-schedule.ipynb | 4 ++-- ...e_averages__name_long-beach-schedule.ipynb | 4 ++-- ...me_madera-county-connection-schedule.ipynb | 4 ++-- ...te_averages__name_mendocino-schedule.ipynb | 4 ++-- ...ages__name_monterey-salinas-schedule.ipynb | 4 ++-- ...verages__name_nevada-county-schedule.ipynb | 4 ++-- ...averages__name_north-county-schedule.ipynb | 4 ++-- ...verages__name_norwalk-avail-schedule.ipynb | 4 ++-- ...8_route_averages__name_octa-schedule.ipynb | 4 ++-- ...te_averages__name_omnitrans-schedule.ipynb | 4 ++-- ...ute_averages__name_pasadena-schedule.ipynb | 3 +++ ...te_averages__name_presidigo-schedule.ipynb | 4 ++-- ...oute_averages__name_redding-schedule.ipynb | 4 ++-- ...verages__name_redwood-coast-schedule.ipynb | 4 ++-- ...te_averages__name_riverside-schedule.ipynb | 4 ++-- ...e_averages__name_sacramento-schedule.ipynb | 4 ++-- ...te_averages__name_san-diego-schedule.ipynb | 4 ++-- ..._averages__name_san-joaquin-schedule.ipynb | 4 ++-- ...verages__name_santa-clarita-schedule.ipynb | 4 ++-- ...e_averages__name_santa-cruz-schedule.ipynb | 4 ++-- ..._averages__name_santa-maria-schedule.ipynb | 4 ++-- ...s__name_santa-ynez-mecatran-schedule.ipynb | 4 ++-- ..._route_averages__name_sbmtd-schedule.ipynb | 4 ++-- ...route_averages__name_slorta-schedule.ipynb | 4 ++-- ...oute_averages__name_stanrta-schedule.ipynb | 4 ++-- ...transportation-district-gmv-schedule.ipynb | 4 ++-- ...ute_averages__name_torrance-schedule.ipynb | 4 ++-- ...oute_averages__name_turlock-schedule.ipynb | 4 ++-- ...ute_averages__name_unitrans-schedule.ipynb | 3 +++ ...ute_averages__name_vctc-gmv-schedule.ipynb | 4 ++-- ...ges__name_victor-valley-gmv-schedule.ipynb | 4 ++-- ...oute_averages__name_visalia-schedule.ipynb | 4 ++-- ...oute_averages__name_yolobus-schedule.ipynb | 4 ++-- portfolio/sites/route_speeds.yml | 21 +++++++++++++++++++ 81 files changed, 193 insertions(+), 144 deletions(-) create mode 100644 portfolio/route_speeds/name_bay-area-511-petaluma-schedule/0__28_route_averages__name_bay-area-511-petaluma-schedule.ipynb create mode 100644 portfolio/route_speeds/name_bay-area-511-santa-rosa-citybus-schedule/0__28_route_averages__name_bay-area-511-santa-rosa-citybus-schedule.ipynb create mode 100644 portfolio/route_speeds/name_bay-area-511-union-city-transit-schedule/0__28_route_averages__name_bay-area-511-union-city-transit-schedule.ipynb create mode 100644 portfolio/route_speeds/name_bear-schedule/0__28_route_averages__name_bear-schedule.ipynb create mode 100644 portfolio/route_speeds/name_etrans-schedule/0__28_route_averages__name_etrans-schedule.ipynb create mode 100644 portfolio/route_speeds/name_pasadena-schedule/0__28_route_averages__name_pasadena-schedule.ipynb create mode 100644 portfolio/route_speeds/name_unitrans-schedule/0__28_route_averages__name_unitrans-schedule.ipynb diff --git a/portfolio/route_speeds/_toc.yml b/portfolio/route_speeds/_toc.yml index c0626c36e..52854df0c 100644 --- a/portfolio/route_speeds/_toc.yml +++ b/portfolio/route_speeds/_toc.yml @@ -16,16 +16,20 @@ parts: - file: name_bay-area-511-mvgo-schedule/0__28_route_averages__name_bay-area-511-mvgo-schedule.ipynb - file: name_bay-area-511-marin-schedule/0__28_route_averages__name_bay-area-511-marin-schedule.ipynb - file: name_bay-area-511-muni-schedule/0__28_route_averages__name_bay-area-511-muni-schedule.ipynb + - file: name_bay-area-511-petaluma-schedule/0__28_route_averages__name_bay-area-511-petaluma-schedule.ipynb - file: name_bay-area-511-samtrans-schedule/0__28_route_averages__name_bay-area-511-samtrans-schedule.ipynb - file: name_bay-area-511-san-francisco-bay-ferry-schedule/0__28_route_averages__name_bay-area-511-san-francisco-bay-ferry-schedule.ipynb - file: name_bay-area-511-santa-clara-transit-schedule/0__28_route_averages__name_bay-area-511-santa-clara-transit-schedule.ipynb + - file: name_bay-area-511-santa-rosa-citybus-schedule/0__28_route_averages__name_bay-area-511-santa-rosa-citybus-schedule.ipynb - file: name_bay-area-511-soltrans-schedule/0__28_route_averages__name_bay-area-511-soltrans-schedule.ipynb - file: name_bay-area-511-sonoma-marin-area-rail-transit-schedule/0__28_route_averages__name_bay-area-511-sonoma-marin-area-rail-transit-schedule.ipynb - file: name_bay-area-511-tri-delta-schedule/0__28_route_averages__name_bay-area-511-tri-delta-schedule.ipynb - file: name_bay-area-511-tri-valley-wheels-schedule/0__28_route_averages__name_bay-area-511-tri-valley-wheels-schedule.ipynb + - file: name_bay-area-511-union-city-transit-schedule/0__28_route_averages__name_bay-area-511-union-city-transit-schedule.ipynb - file: name_bay-area-511-vine-transit-schedule/0__28_route_averages__name_bay-area-511-vine-transit-schedule.ipynb - file: name_bay-area-511-westcat-schedule/0__28_route_averages__name_bay-area-511-westcat-schedule.ipynb - file: name_beach-cities-gmv-schedule/0__28_route_averages__name_beach-cities-gmv-schedule.ipynb + - file: name_bear-schedule/0__28_route_averages__name_bear-schedule.ipynb - file: name_beaumont-pass-schedule/0__28_route_averages__name_beaumont-pass-schedule.ipynb - file: name_big-blue-bus-schedule/0__28_route_averages__name_big-blue-bus-schedule.ipynb - file: name_bruinbus-schedule/0__28_route_averages__name_bruinbus-schedule.ipynb @@ -53,6 +57,7 @@ parts: - file: name_norwalk-avail-schedule/0__28_route_averages__name_norwalk-avail-schedule.ipynb - file: name_octa-schedule/0__28_route_averages__name_octa-schedule.ipynb - file: name_omnitrans-schedule/0__28_route_averages__name_omnitrans-schedule.ipynb + - file: name_pasadena-schedule/0__28_route_averages__name_pasadena-schedule.ipynb - file: name_presidigo-schedule/0__28_route_averages__name_presidigo-schedule.ipynb - file: name_redding-schedule/0__28_route_averages__name_redding-schedule.ipynb - file: name_redwood-coast-schedule/0__28_route_averages__name_redwood-coast-schedule.ipynb @@ -70,8 +75,10 @@ parts: - file: name_tahoe-transportation-district-gmv-schedule/0__28_route_averages__name_tahoe-transportation-district-gmv-schedule.ipynb - file: name_torrance-schedule/0__28_route_averages__name_torrance-schedule.ipynb - file: name_turlock-schedule/0__28_route_averages__name_turlock-schedule.ipynb + - file: name_unitrans-schedule/0__28_route_averages__name_unitrans-schedule.ipynb - file: name_vctc-gmv-schedule/0__28_route_averages__name_vctc-gmv-schedule.ipynb - file: name_victor-valley-gmv-schedule/0__28_route_averages__name_victor-valley-gmv-schedule.ipynb - file: name_visalia-schedule/0__28_route_averages__name_visalia-schedule.ipynb - file: name_yolobus-schedule/0__28_route_averages__name_yolobus-schedule.ipynb + - file: name_etrans-schedule/0__28_route_averages__name_etrans-schedule.ipynb root: README diff --git a/portfolio/route_speeds/name_antelope-valley-transit-authority-schedule/0__28_route_averages__name_antelope-valley-transit-authority-schedule.ipynb b/portfolio/route_speeds/name_antelope-valley-transit-authority-schedule/0__28_route_averages__name_antelope-valley-transit-authority-schedule.ipynb index c64854679..5c2aee906 100644 --- a/portfolio/route_speeds/name_antelope-valley-transit-authority-schedule/0__28_route_averages__name_antelope-valley-transit-authority-schedule.ipynb +++ b/portfolio/route_speeds/name_antelope-valley-transit-authority-schedule/0__28_route_averages__name_antelope-valley-transit-authority-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4b68cd45c0241556ffbc785dd9d510a396fb5a29f03799710375afb08a4de5c9 -size 310194 +oid sha256:748a8dff61bca3cf182e4e1ff2d558f0692f7f88fa75a101220865954b4a347a +size 813922 diff --git a/portfolio/route_speeds/name_avalon-schedule/0__28_route_averages__name_avalon-schedule.ipynb b/portfolio/route_speeds/name_avalon-schedule/0__28_route_averages__name_avalon-schedule.ipynb index 29e592d06..9b6074b0b 100644 --- a/portfolio/route_speeds/name_avalon-schedule/0__28_route_averages__name_avalon-schedule.ipynb +++ b/portfolio/route_speeds/name_avalon-schedule/0__28_route_averages__name_avalon-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:505d09441eb8d6294f451f05329691539d9808da46623211c513454221dbf0c1 -size 39286 +oid sha256:329a454a2fd924f094b7b07cefeceef220feeaf9e508f233fdf9c104b94bace0 +size 39292 diff --git a/portfolio/route_speeds/name_banning-pass-schedule/0__28_route_averages__name_banning-pass-schedule.ipynb b/portfolio/route_speeds/name_banning-pass-schedule/0__28_route_averages__name_banning-pass-schedule.ipynb index f759c0d11..bdc55f005 100644 --- a/portfolio/route_speeds/name_banning-pass-schedule/0__28_route_averages__name_banning-pass-schedule.ipynb +++ b/portfolio/route_speeds/name_banning-pass-schedule/0__28_route_averages__name_banning-pass-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5ff5ba25c483429640a85a0eed1c1a720f69fc2679709246759709f6fe1979ee -size 118105 +oid sha256:fe92c65751d055e39e8d077d9a28d416c581d9b05100a41fb5cc558b7604c709 +size 130504 diff --git a/portfolio/route_speeds/name_bay-area-511-ac-transit-schedule/0__28_route_averages__name_bay-area-511-ac-transit-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-ac-transit-schedule/0__28_route_averages__name_bay-area-511-ac-transit-schedule.ipynb index e403fd6ad..d00225392 100644 --- a/portfolio/route_speeds/name_bay-area-511-ac-transit-schedule/0__28_route_averages__name_bay-area-511-ac-transit-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-ac-transit-schedule/0__28_route_averages__name_bay-area-511-ac-transit-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:df4a2c55caf7aacd3fa84566059ac249338b292f7e9b3d16c27f9d4d7f100071 -size 202890 +oid sha256:c430d992c0fe1557e7c43c8fccd48ef43160aed05682fa3ce6dfde3be1a375b8 +size 5480767 diff --git a/portfolio/route_speeds/name_bay-area-511-ace-schedule/0__28_route_averages__name_bay-area-511-ace-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-ace-schedule/0__28_route_averages__name_bay-area-511-ace-schedule.ipynb index 0f0dc22ff..546a11074 100644 --- a/portfolio/route_speeds/name_bay-area-511-ace-schedule/0__28_route_averages__name_bay-area-511-ace-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-ace-schedule/0__28_route_averages__name_bay-area-511-ace-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ae546115580792c963fb8ae8f70d6dfa0cf3c863ac45ad50828e27f96df930e9 -size 33335 +oid sha256:e3efaf79efa1b7f3b0e1aa62d1ce08eb9dafdbfafd1d6917e0b69e4a0aaf4ea9 +size 33342 diff --git a/portfolio/route_speeds/name_bay-area-511-caltrain-schedule/0__28_route_averages__name_bay-area-511-caltrain-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-caltrain-schedule/0__28_route_averages__name_bay-area-511-caltrain-schedule.ipynb index e8c0396db..cbb1a0bd2 100644 --- a/portfolio/route_speeds/name_bay-area-511-caltrain-schedule/0__28_route_averages__name_bay-area-511-caltrain-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-caltrain-schedule/0__28_route_averages__name_bay-area-511-caltrain-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e31f44ee207204a229a974c0738926bc58a819f54e8508c212ecb13a233f41ac -size 217399 +oid sha256:51fb44965f969089df5a1b3572819b47e675e57dfb1a7a36ad26259af274ea37 +size 237310 diff --git a/portfolio/route_speeds/name_bay-area-511-capitol-corridor-schedule/0__28_route_averages__name_bay-area-511-capitol-corridor-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-capitol-corridor-schedule/0__28_route_averages__name_bay-area-511-capitol-corridor-schedule.ipynb index 6e6efe07f..60670157d 100644 --- a/portfolio/route_speeds/name_bay-area-511-capitol-corridor-schedule/0__28_route_averages__name_bay-area-511-capitol-corridor-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-capitol-corridor-schedule/0__28_route_averages__name_bay-area-511-capitol-corridor-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ae62f3a3599f814ebc0fcb8d7eb49b5dc98efed9569e2df72f1767304b122ad6 -size 38348 +oid sha256:70bd38900d04d502f6d2628d998510028433e54e4ca63fde97a7b2560901213c +size 38332 diff --git a/portfolio/route_speeds/name_bay-area-511-county-connection-schedule/0__28_route_averages__name_bay-area-511-county-connection-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-county-connection-schedule/0__28_route_averages__name_bay-area-511-county-connection-schedule.ipynb index fb75dec07..115553185 100644 --- a/portfolio/route_speeds/name_bay-area-511-county-connection-schedule/0__28_route_averages__name_bay-area-511-county-connection-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-county-connection-schedule/0__28_route_averages__name_bay-area-511-county-connection-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:68770b4979cb24eb0f46a67a6e676bf5f48f6317dfea4843a363a9f268676e4b -size 240453 +oid sha256:f1f55e310737d82bce35a71280f3c8ce0ef61999accb33b3e2f7fee8ef4b7721 +size 1683548 diff --git a/portfolio/route_speeds/name_bay-area-511-dumbarton-express-schedule/0__28_route_averages__name_bay-area-511-dumbarton-express-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-dumbarton-express-schedule/0__28_route_averages__name_bay-area-511-dumbarton-express-schedule.ipynb index b7b8044eb..601cd50e1 100644 --- a/portfolio/route_speeds/name_bay-area-511-dumbarton-express-schedule/0__28_route_averages__name_bay-area-511-dumbarton-express-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-dumbarton-express-schedule/0__28_route_averages__name_bay-area-511-dumbarton-express-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d95336f6437a2ca5eff10141570988dcadbf72fac5ccee7ce6dd97d1aa30b30e -size 132937 +oid sha256:74654ab2d5e955c68528c9019b0ceac53758993a19174629b9d515253df35919 +size 133085 diff --git a/portfolio/route_speeds/name_bay-area-511-fairfield-and-suisun-transit-schedule/0__28_route_averages__name_bay-area-511-fairfield-and-suisun-transit-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-fairfield-and-suisun-transit-schedule/0__28_route_averages__name_bay-area-511-fairfield-and-suisun-transit-schedule.ipynb index f0acb0985..ac80ae60d 100644 --- a/portfolio/route_speeds/name_bay-area-511-fairfield-and-suisun-transit-schedule/0__28_route_averages__name_bay-area-511-fairfield-and-suisun-transit-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-fairfield-and-suisun-transit-schedule/0__28_route_averages__name_bay-area-511-fairfield-and-suisun-transit-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b818a21c3e191db4898bb8f3ecf1d8e7507842afc67923a9313fbab422efa021 -size 75769 +oid sha256:b18f2f6d39423ad2aa54d4d07ff382461f2f679287632791d0dd4d081c4eadfd +size 337670 diff --git a/portfolio/route_speeds/name_bay-area-511-golden-gate-transit-schedule/0__28_route_averages__name_bay-area-511-golden-gate-transit-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-golden-gate-transit-schedule/0__28_route_averages__name_bay-area-511-golden-gate-transit-schedule.ipynb index 5e43bd7df..aa31e2aa7 100644 --- a/portfolio/route_speeds/name_bay-area-511-golden-gate-transit-schedule/0__28_route_averages__name_bay-area-511-golden-gate-transit-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-golden-gate-transit-schedule/0__28_route_averages__name_bay-area-511-golden-gate-transit-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a335a9137a7a509b3fbef25de0e858988b37fe2175caf72c1e27ea962e040e4a -size 310237 +oid sha256:b0c9807a516a0555d741cdba9d27ef02c0e76d993fd7b6c7a760a65525677854 +size 434121 diff --git a/portfolio/route_speeds/name_bay-area-511-marin-schedule/0__28_route_averages__name_bay-area-511-marin-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-marin-schedule/0__28_route_averages__name_bay-area-511-marin-schedule.ipynb index 7fa730aad..b5a10faa3 100644 --- a/portfolio/route_speeds/name_bay-area-511-marin-schedule/0__28_route_averages__name_bay-area-511-marin-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-marin-schedule/0__28_route_averages__name_bay-area-511-marin-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:81eadde6a327f85dcd52ece2f20f1e543b1e3bb6300362da6b7a64665274bb02 -size 312606 +oid sha256:b96ea5ea14e40bda44951aeb26e7fc58acd7a948fd113d18f1ded40dba3d77c5 +size 957439 diff --git a/portfolio/route_speeds/name_bay-area-511-muni-schedule/0__28_route_averages__name_bay-area-511-muni-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-muni-schedule/0__28_route_averages__name_bay-area-511-muni-schedule.ipynb index f02a4335f..7b79b5ef9 100644 --- a/portfolio/route_speeds/name_bay-area-511-muni-schedule/0__28_route_averages__name_bay-area-511-muni-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-muni-schedule/0__28_route_averages__name_bay-area-511-muni-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0c7ef1b56f05962edc33c636c67c92d9c72af81731afe3332f3a76cf9cc47e2c -size 407717 +oid sha256:14a04506c7f9524dbccb467496ad7d55be6be68cc71c5af51694fc1986ee832b +size 3120772 diff --git a/portfolio/route_speeds/name_bay-area-511-mvgo-schedule/0__28_route_averages__name_bay-area-511-mvgo-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-mvgo-schedule/0__28_route_averages__name_bay-area-511-mvgo-schedule.ipynb index e5f36da46..5b87dda0c 100644 --- a/portfolio/route_speeds/name_bay-area-511-mvgo-schedule/0__28_route_averages__name_bay-area-511-mvgo-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-mvgo-schedule/0__28_route_averages__name_bay-area-511-mvgo-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:aa525d1d17d4307bf86d7bbd98a40564d3a653613784a8300a7da0c01b82985c -size 60752 +oid sha256:2a6bb7679c59f29be49cac5d3da44e8b2bd1990732a6328610d2dd0d56cc21c9 +size 100169 diff --git a/portfolio/route_speeds/name_bay-area-511-petaluma-schedule/0__28_route_averages__name_bay-area-511-petaluma-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-petaluma-schedule/0__28_route_averages__name_bay-area-511-petaluma-schedule.ipynb new file mode 100644 index 000000000..291feafc5 --- /dev/null +++ b/portfolio/route_speeds/name_bay-area-511-petaluma-schedule/0__28_route_averages__name_bay-area-511-petaluma-schedule.ipynb @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:458425f8b01a2cf243e6f5e58a8db83227e1d19ea9dc48c52b9d2a23b0122181 +size 195315 diff --git a/portfolio/route_speeds/name_bay-area-511-samtrans-schedule/0__28_route_averages__name_bay-area-511-samtrans-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-samtrans-schedule/0__28_route_averages__name_bay-area-511-samtrans-schedule.ipynb index ec9e0d7ca..dc0d1de62 100644 --- a/portfolio/route_speeds/name_bay-area-511-samtrans-schedule/0__28_route_averages__name_bay-area-511-samtrans-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-samtrans-schedule/0__28_route_averages__name_bay-area-511-samtrans-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4cdad1c018fc2ae5ee5e09a4bc7891dd1f00fff1e48fcb1eda967c14254f7c80 -size 468936 +oid sha256:e6ba196c51816955d302c6eaa4a68d0daa2a1af74c63576e4ee2ccb7fee372be +size 2620995 diff --git a/portfolio/route_speeds/name_bay-area-511-san-francisco-bay-ferry-schedule/0__28_route_averages__name_bay-area-511-san-francisco-bay-ferry-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-san-francisco-bay-ferry-schedule/0__28_route_averages__name_bay-area-511-san-francisco-bay-ferry-schedule.ipynb index 36293727b..7be9261c2 100644 --- a/portfolio/route_speeds/name_bay-area-511-san-francisco-bay-ferry-schedule/0__28_route_averages__name_bay-area-511-san-francisco-bay-ferry-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-san-francisco-bay-ferry-schedule/0__28_route_averages__name_bay-area-511-san-francisco-bay-ferry-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:90634dcf2f48863de5d6a240f253473563a0be10d6548ff301183d75ec5de92a -size 20227 +oid sha256:366776201fe593f803083b7ec02ec1b08c499fdca6436ef94066ecadbe6d1905 +size 20228 diff --git a/portfolio/route_speeds/name_bay-area-511-santa-clara-transit-schedule/0__28_route_averages__name_bay-area-511-santa-clara-transit-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-santa-clara-transit-schedule/0__28_route_averages__name_bay-area-511-santa-clara-transit-schedule.ipynb index 47bc7d2af..864a54ebf 100644 --- a/portfolio/route_speeds/name_bay-area-511-santa-clara-transit-schedule/0__28_route_averages__name_bay-area-511-santa-clara-transit-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-santa-clara-transit-schedule/0__28_route_averages__name_bay-area-511-santa-clara-transit-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8bf5d4b2f908ff256b98f70bcb6bdc9f69050f88d5d87bf45e4a8f229e6d1cb9 -size 548986 +oid sha256:682c74f43b068b9d49a653ff3bb75a23acd72e944a24a730e782c7ab806a7a73 +size 3241343 diff --git a/portfolio/route_speeds/name_bay-area-511-santa-rosa-citybus-schedule/0__28_route_averages__name_bay-area-511-santa-rosa-citybus-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-santa-rosa-citybus-schedule/0__28_route_averages__name_bay-area-511-santa-rosa-citybus-schedule.ipynb new file mode 100644 index 000000000..9e1cc3b29 --- /dev/null +++ b/portfolio/route_speeds/name_bay-area-511-santa-rosa-citybus-schedule/0__28_route_averages__name_bay-area-511-santa-rosa-citybus-schedule.ipynb @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec2198dda9676e2941d10e56378719ae5933a90cf59ea2a4438e3a27cc1d47b3 +size 439936 diff --git a/portfolio/route_speeds/name_bay-area-511-soltrans-schedule/0__28_route_averages__name_bay-area-511-soltrans-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-soltrans-schedule/0__28_route_averages__name_bay-area-511-soltrans-schedule.ipynb index daa199c3f..da3e125ae 100644 --- a/portfolio/route_speeds/name_bay-area-511-soltrans-schedule/0__28_route_averages__name_bay-area-511-soltrans-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-soltrans-schedule/0__28_route_averages__name_bay-area-511-soltrans-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d869167bce3a06e20faaaee358647afc40599b1dae200da335ba15e6b597cc97 -size 256164 +oid sha256:f6deb716e5d7fa9d5d1bed0fed59ba4020f99a34f0e42e250bf25aa2a0b75b2e +size 646686 diff --git a/portfolio/route_speeds/name_bay-area-511-sonoma-marin-area-rail-transit-schedule/0__28_route_averages__name_bay-area-511-sonoma-marin-area-rail-transit-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-sonoma-marin-area-rail-transit-schedule/0__28_route_averages__name_bay-area-511-sonoma-marin-area-rail-transit-schedule.ipynb index de87e7eaf..55fca9955 100644 --- a/portfolio/route_speeds/name_bay-area-511-sonoma-marin-area-rail-transit-schedule/0__28_route_averages__name_bay-area-511-sonoma-marin-area-rail-transit-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-sonoma-marin-area-rail-transit-schedule/0__28_route_averages__name_bay-area-511-sonoma-marin-area-rail-transit-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:86c1a8959f5449c62bbbd5240b7dbbedc00b027535b112121f11a9d6ba0942d2 -size 77374 +oid sha256:bf0610de1dc40c3950a8fc611b97b48b733745d78209c0ebef2a02e4064d7763 +size 77338 diff --git a/portfolio/route_speeds/name_bay-area-511-tri-delta-schedule/0__28_route_averages__name_bay-area-511-tri-delta-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-tri-delta-schedule/0__28_route_averages__name_bay-area-511-tri-delta-schedule.ipynb index 0acfb2ac5..41d6ef924 100644 --- a/portfolio/route_speeds/name_bay-area-511-tri-delta-schedule/0__28_route_averages__name_bay-area-511-tri-delta-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-tri-delta-schedule/0__28_route_averages__name_bay-area-511-tri-delta-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4fd1fab1e96aca95372da5cde3ab585462017b63e772937ed8e7e8d2f68194e5 -size 383748 +oid sha256:d6c36896f0f73fd7d3c1e9d29766ed125e90e588b202114a5c3cddcc314333c7 +size 748840 diff --git a/portfolio/route_speeds/name_bay-area-511-tri-valley-wheels-schedule/0__28_route_averages__name_bay-area-511-tri-valley-wheels-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-tri-valley-wheels-schedule/0__28_route_averages__name_bay-area-511-tri-valley-wheels-schedule.ipynb index 6baa27c9e..bf6438805 100644 --- a/portfolio/route_speeds/name_bay-area-511-tri-valley-wheels-schedule/0__28_route_averages__name_bay-area-511-tri-valley-wheels-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-tri-valley-wheels-schedule/0__28_route_averages__name_bay-area-511-tri-valley-wheels-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a7f2e5e06e61aae4c4ba316bbe1a9336d7ac69107bf9f09f46831e00122c25f0 -size 172412 +oid sha256:79c9482b06098839f06996023a43e3c2f0d4f7ef48e1df40b821bfddebca96ed +size 792989 diff --git a/portfolio/route_speeds/name_bay-area-511-union-city-transit-schedule/0__28_route_averages__name_bay-area-511-union-city-transit-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-union-city-transit-schedule/0__28_route_averages__name_bay-area-511-union-city-transit-schedule.ipynb new file mode 100644 index 000000000..72dd45167 --- /dev/null +++ b/portfolio/route_speeds/name_bay-area-511-union-city-transit-schedule/0__28_route_averages__name_bay-area-511-union-city-transit-schedule.ipynb @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:446e36961c872c58fd254887b1bb11235039d779de9271f60a715659c9a72989 +size 261603 diff --git a/portfolio/route_speeds/name_bay-area-511-vine-transit-schedule/0__28_route_averages__name_bay-area-511-vine-transit-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-vine-transit-schedule/0__28_route_averages__name_bay-area-511-vine-transit-schedule.ipynb index 578aabf4a..d05bca594 100644 --- a/portfolio/route_speeds/name_bay-area-511-vine-transit-schedule/0__28_route_averages__name_bay-area-511-vine-transit-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-vine-transit-schedule/0__28_route_averages__name_bay-area-511-vine-transit-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c89760b0e6f91eb4dd9b77d4f6efa9104ac098d50fa7f45d5207f7ce3696c126 -size 262172 +oid sha256:11826e36cb61f099b2b0d7dbe94eb5d69701728faa0bab490a4e40b3dce2cfe7 +size 335372 diff --git a/portfolio/route_speeds/name_bay-area-511-westcat-schedule/0__28_route_averages__name_bay-area-511-westcat-schedule.ipynb b/portfolio/route_speeds/name_bay-area-511-westcat-schedule/0__28_route_averages__name_bay-area-511-westcat-schedule.ipynb index 7a713f0d5..2e607d7f3 100644 --- a/portfolio/route_speeds/name_bay-area-511-westcat-schedule/0__28_route_averages__name_bay-area-511-westcat-schedule.ipynb +++ b/portfolio/route_speeds/name_bay-area-511-westcat-schedule/0__28_route_averages__name_bay-area-511-westcat-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:057671d05c2cf84b3195541182a165c0acee3093ebc7439ae0ceef6b16df7584 -size 70787 +oid sha256:885aa52907fc1381a86bf6485c1dad21530b71b572a02514bffaecfc0b1a174c +size 464415 diff --git a/portfolio/route_speeds/name_beach-cities-gmv-schedule/0__28_route_averages__name_beach-cities-gmv-schedule.ipynb b/portfolio/route_speeds/name_beach-cities-gmv-schedule/0__28_route_averages__name_beach-cities-gmv-schedule.ipynb index 531d8e7b7..332f668b9 100644 --- a/portfolio/route_speeds/name_beach-cities-gmv-schedule/0__28_route_averages__name_beach-cities-gmv-schedule.ipynb +++ b/portfolio/route_speeds/name_beach-cities-gmv-schedule/0__28_route_averages__name_beach-cities-gmv-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:11f28a66a137ac4a7a917cf5905df8d69ca47a9a6753d140df8a3edbeb664b82 -size 37097 +oid sha256:cb80f4f14ea3250cb03b287ad2aa8a8c761bea4643d23d359cdaf73ed321af09 +size 120144 diff --git a/portfolio/route_speeds/name_bear-schedule/0__28_route_averages__name_bear-schedule.ipynb b/portfolio/route_speeds/name_bear-schedule/0__28_route_averages__name_bear-schedule.ipynb new file mode 100644 index 000000000..4cb1cf2fe --- /dev/null +++ b/portfolio/route_speeds/name_bear-schedule/0__28_route_averages__name_bear-schedule.ipynb @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:257e24c341a13c6e67cedaffe27fa45d00ca99c990997db1e53b9cc173534214 +size 129371 diff --git a/portfolio/route_speeds/name_beaumont-pass-schedule/0__28_route_averages__name_beaumont-pass-schedule.ipynb b/portfolio/route_speeds/name_beaumont-pass-schedule/0__28_route_averages__name_beaumont-pass-schedule.ipynb index eb0202682..f978f3360 100644 --- a/portfolio/route_speeds/name_beaumont-pass-schedule/0__28_route_averages__name_beaumont-pass-schedule.ipynb +++ b/portfolio/route_speeds/name_beaumont-pass-schedule/0__28_route_averages__name_beaumont-pass-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6c761f6e39bbe1375be7c7efd737a396b28a3232a6f28a3acc8972fc39b43312 -size 107286 +oid sha256:aca4a43182762779789abf903339bc7c1a623649ff229fc345d089fc1b081a99 +size 282514 diff --git a/portfolio/route_speeds/name_big-blue-bus-schedule/0__28_route_averages__name_big-blue-bus-schedule.ipynb b/portfolio/route_speeds/name_big-blue-bus-schedule/0__28_route_averages__name_big-blue-bus-schedule.ipynb index 3011edd44..374bb4c75 100644 --- a/portfolio/route_speeds/name_big-blue-bus-schedule/0__28_route_averages__name_big-blue-bus-schedule.ipynb +++ b/portfolio/route_speeds/name_big-blue-bus-schedule/0__28_route_averages__name_big-blue-bus-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:114f602de79ab72046443e8733e4c5e5a7e4db071a1cc8dc0449a56d62414f8a -size 217130 +oid sha256:c1c05a79a5ce4d6fba6bb4446c619e2548cbd1b2340638abb5b9f196b8340b37 +size 894016 diff --git a/portfolio/route_speeds/name_bruinbus-schedule/0__28_route_averages__name_bruinbus-schedule.ipynb b/portfolio/route_speeds/name_bruinbus-schedule/0__28_route_averages__name_bruinbus-schedule.ipynb index 1e8dc9fec..8c079c47d 100644 --- a/portfolio/route_speeds/name_bruinbus-schedule/0__28_route_averages__name_bruinbus-schedule.ipynb +++ b/portfolio/route_speeds/name_bruinbus-schedule/0__28_route_averages__name_bruinbus-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d498bda2c22628f14a3f9fc07060677f5edd28308244362dc63f015c2bb0a98d -size 35775 +oid sha256:4768618026673a68f38c3ba1afcbe246b198a7743f73fd7c54f0ffc2bd9b5edc +size 34214 diff --git a/portfolio/route_speeds/name_burbank-schedule/0__28_route_averages__name_burbank-schedule.ipynb b/portfolio/route_speeds/name_burbank-schedule/0__28_route_averages__name_burbank-schedule.ipynb index 8e43c933c..e056082ed 100644 --- a/portfolio/route_speeds/name_burbank-schedule/0__28_route_averages__name_burbank-schedule.ipynb +++ b/portfolio/route_speeds/name_burbank-schedule/0__28_route_averages__name_burbank-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2bfb803d378abe53941b6f216073214c36e8f079916171c989d0cd6ebfd90a62 -size 44231 +oid sha256:08b1894852151b223a6b2d65b2c84283af4b34ccb5d16a73ad0f9dc8f8f6ddfa +size 68909 diff --git a/portfolio/route_speeds/name_commerce-schedule/0__28_route_averages__name_commerce-schedule.ipynb b/portfolio/route_speeds/name_commerce-schedule/0__28_route_averages__name_commerce-schedule.ipynb index c6784a6cd..f4952df8b 100644 --- a/portfolio/route_speeds/name_commerce-schedule/0__28_route_averages__name_commerce-schedule.ipynb +++ b/portfolio/route_speeds/name_commerce-schedule/0__28_route_averages__name_commerce-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c1e85c6233bfd375e86dda204b2c2edb0bd3ea3a8d9957c7b778a508f953692d -size 47110 +oid sha256:a59b1a10223e69e6a650df69475394ac023be10a471521a99c3f8b7045314cbe +size 151181 diff --git a/portfolio/route_speeds/name_culver-city-schedule/0__28_route_averages__name_culver-city-schedule.ipynb b/portfolio/route_speeds/name_culver-city-schedule/0__28_route_averages__name_culver-city-schedule.ipynb index 712b4b400..378bc8405 100644 --- a/portfolio/route_speeds/name_culver-city-schedule/0__28_route_averages__name_culver-city-schedule.ipynb +++ b/portfolio/route_speeds/name_culver-city-schedule/0__28_route_averages__name_culver-city-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2b24b286c59e94986f9eb3b272d97537d41581904f920558c123728f6be97786 -size 37616 +oid sha256:afd16c0aca9105372f7c019308c0887d44aaa1c8fd95757de33a411f2660b1c3 +size 467156 diff --git a/portfolio/route_speeds/name_desert-roadrunner-gmv-schedule/0__28_route_averages__name_desert-roadrunner-gmv-schedule.ipynb b/portfolio/route_speeds/name_desert-roadrunner-gmv-schedule/0__28_route_averages__name_desert-roadrunner-gmv-schedule.ipynb index b46379513..1b7c3c39d 100644 --- a/portfolio/route_speeds/name_desert-roadrunner-gmv-schedule/0__28_route_averages__name_desert-roadrunner-gmv-schedule.ipynb +++ b/portfolio/route_speeds/name_desert-roadrunner-gmv-schedule/0__28_route_averages__name_desert-roadrunner-gmv-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:44c0661de29bcc90bbbb64e0c5315e81a28dc8a6f94547fb5742affb45c36ea4 -size 38151 +oid sha256:3cb7505e38ef1c804e5d85e30baf6c33dbfba57d65dd28c651045c14db4de2ac +size 57140 diff --git a/portfolio/route_speeds/name_eastern-sierra-schedule/0__28_route_averages__name_eastern-sierra-schedule.ipynb b/portfolio/route_speeds/name_eastern-sierra-schedule/0__28_route_averages__name_eastern-sierra-schedule.ipynb index 89b2cbbda..ec08e76e7 100644 --- a/portfolio/route_speeds/name_eastern-sierra-schedule/0__28_route_averages__name_eastern-sierra-schedule.ipynb +++ b/portfolio/route_speeds/name_eastern-sierra-schedule/0__28_route_averages__name_eastern-sierra-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3035ee108e7b7dfd32abf0a8e84da6a1eb72af115cf38f690205469b868941cf -size 121579 +oid sha256:cecaa4225da392244723c31d144d44d4deff98f080fbd9aad88237726fb02245 +size 161742 diff --git a/portfolio/route_speeds/name_elk-grove-schedule/0__28_route_averages__name_elk-grove-schedule.ipynb b/portfolio/route_speeds/name_elk-grove-schedule/0__28_route_averages__name_elk-grove-schedule.ipynb index afd84dd97..add54a1ae 100644 --- a/portfolio/route_speeds/name_elk-grove-schedule/0__28_route_averages__name_elk-grove-schedule.ipynb +++ b/portfolio/route_speeds/name_elk-grove-schedule/0__28_route_averages__name_elk-grove-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9b491bde14798830a5c8f587c35b6781c9c1611343cea50eb739d48eb9f2e482 -size 380170 +oid sha256:59db95f8402b2e710a3b86f591de83b022e64bf09b71d63a79d52bad4aa8d95e +size 664273 diff --git a/portfolio/route_speeds/name_etrans-schedule/0__28_route_averages__name_etrans-schedule.ipynb b/portfolio/route_speeds/name_etrans-schedule/0__28_route_averages__name_etrans-schedule.ipynb new file mode 100644 index 000000000..08458ef94 --- /dev/null +++ b/portfolio/route_speeds/name_etrans-schedule/0__28_route_averages__name_etrans-schedule.ipynb @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc7e7c8771ebf97b447d98c55418dabcd35c0b8546fe035736852e7a4ed9a73e +size 62421 diff --git a/portfolio/route_speeds/name_fresno-schedule/0__28_route_averages__name_fresno-schedule.ipynb b/portfolio/route_speeds/name_fresno-schedule/0__28_route_averages__name_fresno-schedule.ipynb index c2216cebb..58a7d93a9 100644 --- a/portfolio/route_speeds/name_fresno-schedule/0__28_route_averages__name_fresno-schedule.ipynb +++ b/portfolio/route_speeds/name_fresno-schedule/0__28_route_averages__name_fresno-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:769a61b699bbcf31417f2e3ff743603e041b0219621f621a36c920576b3b9930 -size 64100 +oid sha256:0caabad8a379e57282de18c5337006e3c7224d87350af75d140a1e89f3df2b70 +size 788660 diff --git a/portfolio/route_speeds/name_get-schedule/0__28_route_averages__name_get-schedule.ipynb b/portfolio/route_speeds/name_get-schedule/0__28_route_averages__name_get-schedule.ipynb index f91a534e0..6a9dc68c3 100644 --- a/portfolio/route_speeds/name_get-schedule/0__28_route_averages__name_get-schedule.ipynb +++ b/portfolio/route_speeds/name_get-schedule/0__28_route_averages__name_get-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6f787039d0fcf39354a2d4ed09213822d5515b3752b0023f74cc068970b1ee1d -size 238134 +oid sha256:4af5a1cd1c521e5c84aaeb5c08960fc2d6cb1868b374e24f240205a5e58c48d3 +size 800031 diff --git a/portfolio/route_speeds/name_humboldt-schedule/0__28_route_averages__name_humboldt-schedule.ipynb b/portfolio/route_speeds/name_humboldt-schedule/0__28_route_averages__name_humboldt-schedule.ipynb index 81afe62e4..672345f17 100644 --- a/portfolio/route_speeds/name_humboldt-schedule/0__28_route_averages__name_humboldt-schedule.ipynb +++ b/portfolio/route_speeds/name_humboldt-schedule/0__28_route_averages__name_humboldt-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b938e620198d2c0c006088a89f4c25591d1a3e778b613df9cc5064d28046f8ee -size 287000 +oid sha256:3559bb98f0a1ac5b7f507f0ce0ee02c75f270d5f3415ee46445971b0e5e93cdd +size 344705 diff --git a/portfolio/route_speeds/name_kings-schedule/0__28_route_averages__name_kings-schedule.ipynb b/portfolio/route_speeds/name_kings-schedule/0__28_route_averages__name_kings-schedule.ipynb index effea3be0..3c00911e5 100644 --- a/portfolio/route_speeds/name_kings-schedule/0__28_route_averages__name_kings-schedule.ipynb +++ b/portfolio/route_speeds/name_kings-schedule/0__28_route_averages__name_kings-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:67b8abf652a2210068cdbc804fc1ed0ea9bc48913c880185d4c8226e379429d8 -size 184151 +oid sha256:df76399693628ae5b9412a2818ad36d35d08e482b2b46d51f1d569d6c69672b1 +size 370710 diff --git a/portfolio/route_speeds/name_la-dot-schedule/0__28_route_averages__name_la-dot-schedule.ipynb b/portfolio/route_speeds/name_la-dot-schedule/0__28_route_averages__name_la-dot-schedule.ipynb index 0f7c267e0..8ef6deab2 100644 --- a/portfolio/route_speeds/name_la-dot-schedule/0__28_route_averages__name_la-dot-schedule.ipynb +++ b/portfolio/route_speeds/name_la-dot-schedule/0__28_route_averages__name_la-dot-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:92eeb6a89da478f02e82e412c0b0f5a7bc0e2dbbfb4c37347e64bdcc6ed57546 -size 748399 +oid sha256:b5d3537352ee523680111488eb0af3c2f655422554f2f25ea562a155661c26ad +size 2119508 diff --git a/portfolio/route_speeds/name_la-metro-bus-schedule/0__28_route_averages__name_la-metro-bus-schedule.ipynb b/portfolio/route_speeds/name_la-metro-bus-schedule/0__28_route_averages__name_la-metro-bus-schedule.ipynb index e2498decf..fedcc3523 100644 --- a/portfolio/route_speeds/name_la-metro-bus-schedule/0__28_route_averages__name_la-metro-bus-schedule.ipynb +++ b/portfolio/route_speeds/name_la-metro-bus-schedule/0__28_route_averages__name_la-metro-bus-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1d7ee56584c53210a9c845c407f69e7b0e6ac188b0dd8d823a840a97f67204ae -size 1239058 +oid sha256:f2a1678a997b435e70ebe38fa55f526ab0a457a8f04ee40f29aab085023d9607 +size 6403956 diff --git a/portfolio/route_speeds/name_la-metro-rail-schedule/0__28_route_averages__name_la-metro-rail-schedule.ipynb b/portfolio/route_speeds/name_la-metro-rail-schedule/0__28_route_averages__name_la-metro-rail-schedule.ipynb index 5b640f5e8..cf28b38a7 100644 --- a/portfolio/route_speeds/name_la-metro-rail-schedule/0__28_route_averages__name_la-metro-rail-schedule.ipynb +++ b/portfolio/route_speeds/name_la-metro-rail-schedule/0__28_route_averages__name_la-metro-rail-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:11364a2d9aa6d59ccae57038bdc7d2ba2a84277f6f91a0996e49d0346941ca31 -size 85418 +oid sha256:58184b1b34f4d4dec1ef02fa0efde484d080e0f4ca6a696289baab9ff9f3c2a5 +size 242288 diff --git a/portfolio/route_speeds/name_lake-schedule/0__28_route_averages__name_lake-schedule.ipynb b/portfolio/route_speeds/name_lake-schedule/0__28_route_averages__name_lake-schedule.ipynb index 5b4dfe5fa..7ff364779 100644 --- a/portfolio/route_speeds/name_lake-schedule/0__28_route_averages__name_lake-schedule.ipynb +++ b/portfolio/route_speeds/name_lake-schedule/0__28_route_averages__name_lake-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0bcbe3d345504341df284b89fbbfd93a2b7b87da01ea7fbe265e7de5192e5956 -size 293327 +oid sha256:b8f4f1b99fed2e30901639662212726ff0de7b5362faa35767662f5214cf0b93 +size 336438 diff --git a/portfolio/route_speeds/name_lawndale-beat-gmv-schedule/0__28_route_averages__name_lawndale-beat-gmv-schedule.ipynb b/portfolio/route_speeds/name_lawndale-beat-gmv-schedule/0__28_route_averages__name_lawndale-beat-gmv-schedule.ipynb index eec876be3..d11c487c5 100644 --- a/portfolio/route_speeds/name_lawndale-beat-gmv-schedule/0__28_route_averages__name_lawndale-beat-gmv-schedule.ipynb +++ b/portfolio/route_speeds/name_lawndale-beat-gmv-schedule/0__28_route_averages__name_lawndale-beat-gmv-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d8186406e9873a19c6ad5c587a0f9fa7b9c1cd6b3e62c68314d35841aabd3efe -size 28091 +oid sha256:43a00a27af84a00d2267c7fe09104cd22204158fa5870076ff5deb37398e7d10 +size 39788 diff --git a/portfolio/route_speeds/name_long-beach-schedule/0__28_route_averages__name_long-beach-schedule.ipynb b/portfolio/route_speeds/name_long-beach-schedule/0__28_route_averages__name_long-beach-schedule.ipynb index fdcf68b1f..af3ce0d3e 100644 --- a/portfolio/route_speeds/name_long-beach-schedule/0__28_route_averages__name_long-beach-schedule.ipynb +++ b/portfolio/route_speeds/name_long-beach-schedule/0__28_route_averages__name_long-beach-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:135a69eacda3739da43924cd2e07c18d5cc8226d42f21fc044c4ce5b6297a2cb -size 172843 +oid sha256:d82db16924cacebc896aad5c6368330350768877ca3d0a5a4a2c83b3251632e8 +size 1795813 diff --git a/portfolio/route_speeds/name_madera-county-connection-schedule/0__28_route_averages__name_madera-county-connection-schedule.ipynb b/portfolio/route_speeds/name_madera-county-connection-schedule/0__28_route_averages__name_madera-county-connection-schedule.ipynb index 4d0a053b3..880f9e86e 100644 --- a/portfolio/route_speeds/name_madera-county-connection-schedule/0__28_route_averages__name_madera-county-connection-schedule.ipynb +++ b/portfolio/route_speeds/name_madera-county-connection-schedule/0__28_route_averages__name_madera-county-connection-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e32e10de2280db6fa48200405d8318aeeeeaffcc3624976e0d18207ab62f5759 -size 215507 +oid sha256:982493aaea487cf431fa5e11fda3d05a24c8c7552a66492d44ebdee28d21644a +size 215582 diff --git a/portfolio/route_speeds/name_mendocino-schedule/0__28_route_averages__name_mendocino-schedule.ipynb b/portfolio/route_speeds/name_mendocino-schedule/0__28_route_averages__name_mendocino-schedule.ipynb index 5fac933f9..a67c5bbf4 100644 --- a/portfolio/route_speeds/name_mendocino-schedule/0__28_route_averages__name_mendocino-schedule.ipynb +++ b/portfolio/route_speeds/name_mendocino-schedule/0__28_route_averages__name_mendocino-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6c6a4365c39c577a33aa7d78d46a10a2eab83a8e3f4800a2ce3bf3d5900c93db -size 142801 +oid sha256:9628b86f3b5fb8e5415470555681e414ac1c6862a4233354baac6f544b96ddf6 +size 318523 diff --git a/portfolio/route_speeds/name_monterey-salinas-schedule/0__28_route_averages__name_monterey-salinas-schedule.ipynb b/portfolio/route_speeds/name_monterey-salinas-schedule/0__28_route_averages__name_monterey-salinas-schedule.ipynb index 229b17ac4..39cf0b4ba 100644 --- a/portfolio/route_speeds/name_monterey-salinas-schedule/0__28_route_averages__name_monterey-salinas-schedule.ipynb +++ b/portfolio/route_speeds/name_monterey-salinas-schedule/0__28_route_averages__name_monterey-salinas-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e3823b06d1309df2ee10ef8403247cd38c216278672f8b6a4f0803df31e32e82 -size 371943 +oid sha256:781b3351b55a6676d1c73f2e1f26e62f20a0f99073d09e14cb39f2708cec6316 +size 1593110 diff --git a/portfolio/route_speeds/name_nevada-county-schedule/0__28_route_averages__name_nevada-county-schedule.ipynb b/portfolio/route_speeds/name_nevada-county-schedule/0__28_route_averages__name_nevada-county-schedule.ipynb index e4b5c46e6..f952f4c87 100644 --- a/portfolio/route_speeds/name_nevada-county-schedule/0__28_route_averages__name_nevada-county-schedule.ipynb +++ b/portfolio/route_speeds/name_nevada-county-schedule/0__28_route_averages__name_nevada-county-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9d723a4217000f5834e16ae5317c93e93ea8c7529ceda31fe03bb604f1e5606b -size 167495 +oid sha256:7ac4cd6ca0283687425d64f9599dbff63e23af248b7e840467ff8f6370982403 +size 331351 diff --git a/portfolio/route_speeds/name_north-county-schedule/0__28_route_averages__name_north-county-schedule.ipynb b/portfolio/route_speeds/name_north-county-schedule/0__28_route_averages__name_north-county-schedule.ipynb index 4e6ffe0e9..63c6078cf 100644 --- a/portfolio/route_speeds/name_north-county-schedule/0__28_route_averages__name_north-county-schedule.ipynb +++ b/portfolio/route_speeds/name_north-county-schedule/0__28_route_averages__name_north-county-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ed0f3e79fbe1fc82910885fcc1e2debf9cdf371eaeb80b43583853baacaf14a4 -size 347246 +oid sha256:717ce6c23223b73d10e45c6f67b6054b90f1c3ef40a39a865effd8d8a7787b76 +size 1828438 diff --git a/portfolio/route_speeds/name_norwalk-avail-schedule/0__28_route_averages__name_norwalk-avail-schedule.ipynb b/portfolio/route_speeds/name_norwalk-avail-schedule/0__28_route_averages__name_norwalk-avail-schedule.ipynb index 2a0086dc5..ec3738927 100644 --- a/portfolio/route_speeds/name_norwalk-avail-schedule/0__28_route_averages__name_norwalk-avail-schedule.ipynb +++ b/portfolio/route_speeds/name_norwalk-avail-schedule/0__28_route_averages__name_norwalk-avail-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9510b8ecd8035ef7d019ddd5fd58ccaec4beebd9e33dfb77decf0339984d7e1c -size 20023 +oid sha256:affe4999e337cd442a582acdae53f562a0dc3e837808383a42e85ce2fe7d8f01 +size 207168 diff --git a/portfolio/route_speeds/name_octa-schedule/0__28_route_averages__name_octa-schedule.ipynb b/portfolio/route_speeds/name_octa-schedule/0__28_route_averages__name_octa-schedule.ipynb index ab32ed95d..55cbfeb58 100644 --- a/portfolio/route_speeds/name_octa-schedule/0__28_route_averages__name_octa-schedule.ipynb +++ b/portfolio/route_speeds/name_octa-schedule/0__28_route_averages__name_octa-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:62dc62b746a9beaec2e9d8fa405589f8fdf36b798c558b506a8b109a975e12d7 -size 414645 +oid sha256:9531614e2594ec34141c9e4008788589a79dfc6e8b8d5da831617ff9b523cf1b +size 2968207 diff --git a/portfolio/route_speeds/name_omnitrans-schedule/0__28_route_averages__name_omnitrans-schedule.ipynb b/portfolio/route_speeds/name_omnitrans-schedule/0__28_route_averages__name_omnitrans-schedule.ipynb index 2b5190584..5ab83c1f8 100644 --- a/portfolio/route_speeds/name_omnitrans-schedule/0__28_route_averages__name_omnitrans-schedule.ipynb +++ b/portfolio/route_speeds/name_omnitrans-schedule/0__28_route_averages__name_omnitrans-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6abce2852b6a2c2a388ab0adbb71d6eb794c9471650b74eeb2ada5d2c0569d06 -size 104859 +oid sha256:00e9fbbdf37b9958979486f5fb7a635692bb953234e9e95fff427ce2cf68ae50 +size 677924 diff --git a/portfolio/route_speeds/name_pasadena-schedule/0__28_route_averages__name_pasadena-schedule.ipynb b/portfolio/route_speeds/name_pasadena-schedule/0__28_route_averages__name_pasadena-schedule.ipynb new file mode 100644 index 000000000..f4f307d92 --- /dev/null +++ b/portfolio/route_speeds/name_pasadena-schedule/0__28_route_averages__name_pasadena-schedule.ipynb @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a786d11f22e81bace90132c523754ca38870d3031197c2dc72f74ca638dbba1b +size 364178 diff --git a/portfolio/route_speeds/name_presidigo-schedule/0__28_route_averages__name_presidigo-schedule.ipynb b/portfolio/route_speeds/name_presidigo-schedule/0__28_route_averages__name_presidigo-schedule.ipynb index 878157ac1..46a082c44 100644 --- a/portfolio/route_speeds/name_presidigo-schedule/0__28_route_averages__name_presidigo-schedule.ipynb +++ b/portfolio/route_speeds/name_presidigo-schedule/0__28_route_averages__name_presidigo-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:940d6a6e56df72ff9a202f75b6996907054f3657e263a9d2176bfc12271b9862 -size 46757 +oid sha256:dcfb95e87386b6943abed19fa8c6aefb062629d9d893f00f08350f69c906ebb4 +size 69232 diff --git a/portfolio/route_speeds/name_redding-schedule/0__28_route_averages__name_redding-schedule.ipynb b/portfolio/route_speeds/name_redding-schedule/0__28_route_averages__name_redding-schedule.ipynb index 80c26e3a0..9c055cc81 100644 --- a/portfolio/route_speeds/name_redding-schedule/0__28_route_averages__name_redding-schedule.ipynb +++ b/portfolio/route_speeds/name_redding-schedule/0__28_route_averages__name_redding-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b06df0a143f4c341486980de0719bdff8b167660ba4425ecc6975e2ba8ac54e2 -size 99578 +oid sha256:94f02151e88dd5cdda1b28f1fd78d2036943370ed5bcd2d6cbcac27009696ed9 +size 494755 diff --git a/portfolio/route_speeds/name_redwood-coast-schedule/0__28_route_averages__name_redwood-coast-schedule.ipynb b/portfolio/route_speeds/name_redwood-coast-schedule/0__28_route_averages__name_redwood-coast-schedule.ipynb index 764a6266e..5ae2131dc 100644 --- a/portfolio/route_speeds/name_redwood-coast-schedule/0__28_route_averages__name_redwood-coast-schedule.ipynb +++ b/portfolio/route_speeds/name_redwood-coast-schedule/0__28_route_averages__name_redwood-coast-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1747a48fd9a4e565153bbe210ed4787b7d685319e71e5bddb6013293a67c957b -size 185566 +oid sha256:4326bcafbceddfd6aca5c84a2fcde6b57a14a337b404e049fa247d7481cf59f7 +size 258194 diff --git a/portfolio/route_speeds/name_riverside-schedule/0__28_route_averages__name_riverside-schedule.ipynb b/portfolio/route_speeds/name_riverside-schedule/0__28_route_averages__name_riverside-schedule.ipynb index d1a5f1068..1ba185554 100644 --- a/portfolio/route_speeds/name_riverside-schedule/0__28_route_averages__name_riverside-schedule.ipynb +++ b/portfolio/route_speeds/name_riverside-schedule/0__28_route_averages__name_riverside-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b37733de6322afb8fa972b513e7c81918e8dc9061d20b5f869b5b148855fc64b -size 656938 +oid sha256:a5ba7673d1b3a414323d503e821e503b16a16c36850598d28657c584d007c635 +size 1731250 diff --git a/portfolio/route_speeds/name_sacramento-schedule/0__28_route_averages__name_sacramento-schedule.ipynb b/portfolio/route_speeds/name_sacramento-schedule/0__28_route_averages__name_sacramento-schedule.ipynb index 03c8f701c..e14c14343 100644 --- a/portfolio/route_speeds/name_sacramento-schedule/0__28_route_averages__name_sacramento-schedule.ipynb +++ b/portfolio/route_speeds/name_sacramento-schedule/0__28_route_averages__name_sacramento-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:361882de01d6cceae0e114e09fba6def924f4720b06a06dab527d78d5adc815d -size 283781 +oid sha256:f9c2ff76d56085898670c364047bd82e80dffcf9be31055700229b68b66c4942 +size 1890170 diff --git a/portfolio/route_speeds/name_san-diego-schedule/0__28_route_averages__name_san-diego-schedule.ipynb b/portfolio/route_speeds/name_san-diego-schedule/0__28_route_averages__name_san-diego-schedule.ipynb index e4bec51a9..4b1ace54c 100644 --- a/portfolio/route_speeds/name_san-diego-schedule/0__28_route_averages__name_san-diego-schedule.ipynb +++ b/portfolio/route_speeds/name_san-diego-schedule/0__28_route_averages__name_san-diego-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fcd1b6e4c44bca0a821621d8f54b8785ea28b8c7e85578f93b6337beaaabd775 -size 939284 +oid sha256:bec231b72473b614dd836f89b1acc5178389a3ce75c07bb647c7cb46079f42ae +size 4811591 diff --git a/portfolio/route_speeds/name_san-joaquin-schedule/0__28_route_averages__name_san-joaquin-schedule.ipynb b/portfolio/route_speeds/name_san-joaquin-schedule/0__28_route_averages__name_san-joaquin-schedule.ipynb index 9ff73a06e..bbdebfc40 100644 --- a/portfolio/route_speeds/name_san-joaquin-schedule/0__28_route_averages__name_san-joaquin-schedule.ipynb +++ b/portfolio/route_speeds/name_san-joaquin-schedule/0__28_route_averages__name_san-joaquin-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8f743c23d1e7c52360976a557c5e99c74cd24d00938799a01e28178efbd20dae -size 505548 +oid sha256:3a0618a4ef242cfadd1bf210e1a2613f065b78661d0e360fc86c3ac4d7c469ac +size 1548126 diff --git a/portfolio/route_speeds/name_santa-clarita-schedule/0__28_route_averages__name_santa-clarita-schedule.ipynb b/portfolio/route_speeds/name_santa-clarita-schedule/0__28_route_averages__name_santa-clarita-schedule.ipynb index 3f16d370c..1781f5ea6 100644 --- a/portfolio/route_speeds/name_santa-clarita-schedule/0__28_route_averages__name_santa-clarita-schedule.ipynb +++ b/portfolio/route_speeds/name_santa-clarita-schedule/0__28_route_averages__name_santa-clarita-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:019090bc19f182fb6df9ce50d9d5f7d017b4d33cd065a7c10791587b0cfdacf0 -size 289894 +oid sha256:40e661db1e7095864e6c64dea5b04ad60834b166ce44d754f101831c735faad0 +size 1026569 diff --git a/portfolio/route_speeds/name_santa-cruz-schedule/0__28_route_averages__name_santa-cruz-schedule.ipynb b/portfolio/route_speeds/name_santa-cruz-schedule/0__28_route_averages__name_santa-cruz-schedule.ipynb index 040330027..8f151c36d 100644 --- a/portfolio/route_speeds/name_santa-cruz-schedule/0__28_route_averages__name_santa-cruz-schedule.ipynb +++ b/portfolio/route_speeds/name_santa-cruz-schedule/0__28_route_averages__name_santa-cruz-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4138aaa9244df451964d7efcd888877bfd35a134409dd05b2282f8b2dfb48840 -size 162092 +oid sha256:4c0f5c94835f1e07cab419a3fef269314e6ec958926acd6cbab122c9bf97d870 +size 534617 diff --git a/portfolio/route_speeds/name_santa-maria-schedule/0__28_route_averages__name_santa-maria-schedule.ipynb b/portfolio/route_speeds/name_santa-maria-schedule/0__28_route_averages__name_santa-maria-schedule.ipynb index f38dd3a59..068614c43 100644 --- a/portfolio/route_speeds/name_santa-maria-schedule/0__28_route_averages__name_santa-maria-schedule.ipynb +++ b/portfolio/route_speeds/name_santa-maria-schedule/0__28_route_averages__name_santa-maria-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3f9cb675493c0d69223d63a1cf3d83b0bdb4f1d4231f55318498f2c89ab5c541 -size 49528 +oid sha256:e87cc589fbb86f0285cdefb00bdc81d0e955a7445e39f185f5ef092afd9bd575 +size 48603 diff --git a/portfolio/route_speeds/name_santa-ynez-mecatran-schedule/0__28_route_averages__name_santa-ynez-mecatran-schedule.ipynb b/portfolio/route_speeds/name_santa-ynez-mecatran-schedule/0__28_route_averages__name_santa-ynez-mecatran-schedule.ipynb index c06e9538d..496750715 100644 --- a/portfolio/route_speeds/name_santa-ynez-mecatran-schedule/0__28_route_averages__name_santa-ynez-mecatran-schedule.ipynb +++ b/portfolio/route_speeds/name_santa-ynez-mecatran-schedule/0__28_route_averages__name_santa-ynez-mecatran-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8942821d0546aef971718d025e73fa65f9a69594ef5e5f420395796dc1a6bfa5 -size 73903 +oid sha256:b38d8e61f4290aa0689def4fdc72ebd05a791b82590191b5754faa2ca31e49e3 +size 77369 diff --git a/portfolio/route_speeds/name_sbmtd-schedule/0__28_route_averages__name_sbmtd-schedule.ipynb b/portfolio/route_speeds/name_sbmtd-schedule/0__28_route_averages__name_sbmtd-schedule.ipynb index eb681bb8c..205583b1f 100644 --- a/portfolio/route_speeds/name_sbmtd-schedule/0__28_route_averages__name_sbmtd-schedule.ipynb +++ b/portfolio/route_speeds/name_sbmtd-schedule/0__28_route_averages__name_sbmtd-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cf1578bcaa8663aef33f9d9e49307ce5ef66080cae17e1f8e889b2365437d8f8 -size 222493 +oid sha256:9f64fc41e081c8dd4ccf4d6ec7bbe825078bc1d399467aa3d859c88d32da4164 +size 1023362 diff --git a/portfolio/route_speeds/name_slorta-schedule/0__28_route_averages__name_slorta-schedule.ipynb b/portfolio/route_speeds/name_slorta-schedule/0__28_route_averages__name_slorta-schedule.ipynb index 6bb60b5c5..78027d19f 100644 --- a/portfolio/route_speeds/name_slorta-schedule/0__28_route_averages__name_slorta-schedule.ipynb +++ b/portfolio/route_speeds/name_slorta-schedule/0__28_route_averages__name_slorta-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:811332ec816379262d954d5fcef80f919f0ded3c2db1dfcec3d1453335343964 -size 147796 +oid sha256:08ddc2b7d806e138fbd9e65b89240861b63f26d892218dbf77f3c5bd0d47c04c +size 181969 diff --git a/portfolio/route_speeds/name_stanrta-schedule/0__28_route_averages__name_stanrta-schedule.ipynb b/portfolio/route_speeds/name_stanrta-schedule/0__28_route_averages__name_stanrta-schedule.ipynb index b5ada109d..2ba462932 100644 --- a/portfolio/route_speeds/name_stanrta-schedule/0__28_route_averages__name_stanrta-schedule.ipynb +++ b/portfolio/route_speeds/name_stanrta-schedule/0__28_route_averages__name_stanrta-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5d6d1feead4130aea9d31520051a93d7f90ce2b71cc6063d01a0441fa0dc0c39 -size 282728 +oid sha256:849d02091a7fd21b8c1e53f24672b272e464240e45d1914a51972619518767db +size 837799 diff --git a/portfolio/route_speeds/name_tahoe-transportation-district-gmv-schedule/0__28_route_averages__name_tahoe-transportation-district-gmv-schedule.ipynb b/portfolio/route_speeds/name_tahoe-transportation-district-gmv-schedule/0__28_route_averages__name_tahoe-transportation-district-gmv-schedule.ipynb index 0f997d91e..303b0beea 100644 --- a/portfolio/route_speeds/name_tahoe-transportation-district-gmv-schedule/0__28_route_averages__name_tahoe-transportation-district-gmv-schedule.ipynb +++ b/portfolio/route_speeds/name_tahoe-transportation-district-gmv-schedule/0__28_route_averages__name_tahoe-transportation-district-gmv-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c73e9bfe2b5422a2715485b13c7397b4d85dcc5e24bd82b9fdcc13174a0f4e0c -size 43608 +oid sha256:8ede27f1ce52eebfd7f1cf917a9d04a15d120b46e0e95edb72e62aed6fd3bb03 +size 70162 diff --git a/portfolio/route_speeds/name_torrance-schedule/0__28_route_averages__name_torrance-schedule.ipynb b/portfolio/route_speeds/name_torrance-schedule/0__28_route_averages__name_torrance-schedule.ipynb index 285ecc302..02d255d4d 100644 --- a/portfolio/route_speeds/name_torrance-schedule/0__28_route_averages__name_torrance-schedule.ipynb +++ b/portfolio/route_speeds/name_torrance-schedule/0__28_route_averages__name_torrance-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:389118a018b1a238254039a0267253397316069c8e3ba4c1d238fa1ec0badfa4 -size 97404 +oid sha256:e18dae9bc6c2d8c1d8533067bfdfa20c21ba230f192142ccf529e258080c3bd1 +size 588923 diff --git a/portfolio/route_speeds/name_turlock-schedule/0__28_route_averages__name_turlock-schedule.ipynb b/portfolio/route_speeds/name_turlock-schedule/0__28_route_averages__name_turlock-schedule.ipynb index 52277f354..68a08393a 100644 --- a/portfolio/route_speeds/name_turlock-schedule/0__28_route_averages__name_turlock-schedule.ipynb +++ b/portfolio/route_speeds/name_turlock-schedule/0__28_route_averages__name_turlock-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8bca363cb664ce47fa5470cc90282bd3395dce32892eaa69207cfdb0cb2b7ef7 -size 24802 +oid sha256:effb15329c31505d3421531c823b57203fba7b48acbf52bb70f411c5830a478c +size 250994 diff --git a/portfolio/route_speeds/name_unitrans-schedule/0__28_route_averages__name_unitrans-schedule.ipynb b/portfolio/route_speeds/name_unitrans-schedule/0__28_route_averages__name_unitrans-schedule.ipynb new file mode 100644 index 000000000..c48845c39 --- /dev/null +++ b/portfolio/route_speeds/name_unitrans-schedule/0__28_route_averages__name_unitrans-schedule.ipynb @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:097f49eb498ba285d73598d6a168e6714254506aa77cb3d2d122357588e55316 +size 401585 diff --git a/portfolio/route_speeds/name_vctc-gmv-schedule/0__28_route_averages__name_vctc-gmv-schedule.ipynb b/portfolio/route_speeds/name_vctc-gmv-schedule/0__28_route_averages__name_vctc-gmv-schedule.ipynb index f20ecba18..47deaa82a 100644 --- a/portfolio/route_speeds/name_vctc-gmv-schedule/0__28_route_averages__name_vctc-gmv-schedule.ipynb +++ b/portfolio/route_speeds/name_vctc-gmv-schedule/0__28_route_averages__name_vctc-gmv-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bc38969a3d30bfe9004278d335f6fbd61d46bc4dbed1a90b37fd170428ef2f35 -size 643109 +oid sha256:ee6062ab28ecb0b97ddbd096c28c23ff675d24492740c5cf12dabc94880cf1a1 +size 1545579 diff --git a/portfolio/route_speeds/name_victor-valley-gmv-schedule/0__28_route_averages__name_victor-valley-gmv-schedule.ipynb b/portfolio/route_speeds/name_victor-valley-gmv-schedule/0__28_route_averages__name_victor-valley-gmv-schedule.ipynb index 9d892b844..5df235343 100644 --- a/portfolio/route_speeds/name_victor-valley-gmv-schedule/0__28_route_averages__name_victor-valley-gmv-schedule.ipynb +++ b/portfolio/route_speeds/name_victor-valley-gmv-schedule/0__28_route_averages__name_victor-valley-gmv-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:767627fb7e0e0e789df1096e79a5ced12e4ede4b59a504296d86b39b3b83021e -size 463597 +oid sha256:af7481436348b87fb9886c1084109e36a223a0534af0fe811ea17cf9b28890e7 +size 1519071 diff --git a/portfolio/route_speeds/name_visalia-schedule/0__28_route_averages__name_visalia-schedule.ipynb b/portfolio/route_speeds/name_visalia-schedule/0__28_route_averages__name_visalia-schedule.ipynb index 2b01dfdf0..0c3e3694c 100644 --- a/portfolio/route_speeds/name_visalia-schedule/0__28_route_averages__name_visalia-schedule.ipynb +++ b/portfolio/route_speeds/name_visalia-schedule/0__28_route_averages__name_visalia-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7bc3f16e5b924a4eeb3c92231e81b5971ce9d19273d721ffcaa660743b99f895 -size 64924 +oid sha256:2b33d6979a5d58d6b1da3106099fe342ec08520d032f837ba3c2c2f2de4a15cd +size 410997 diff --git a/portfolio/route_speeds/name_yolobus-schedule/0__28_route_averages__name_yolobus-schedule.ipynb b/portfolio/route_speeds/name_yolobus-schedule/0__28_route_averages__name_yolobus-schedule.ipynb index 69e430173..5c65b5352 100644 --- a/portfolio/route_speeds/name_yolobus-schedule/0__28_route_averages__name_yolobus-schedule.ipynb +++ b/portfolio/route_speeds/name_yolobus-schedule/0__28_route_averages__name_yolobus-schedule.ipynb @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5d4ac327de40f23e85288cc59666bc2b4e51c902e0dd7eceb6d04e98702e6a12 -size 254488 +oid sha256:135e779e055c8d097e02e708750a5ee400b4191b21c755941a7c62ecf97c1398 +size 388359 diff --git a/portfolio/sites/route_speeds.yml b/portfolio/sites/route_speeds.yml index 20328090a..e384e531f 100644 --- a/portfolio/sites/route_speeds.yml +++ b/portfolio/sites/route_speeds.yml @@ -44,6 +44,9 @@ parts: - caption: Bay Area 511 Muni Schedule params: name: Bay Area 511 Muni Schedule + - caption: Bay Area 511 Petaluma Schedule + params: + name: Bay Area 511 Petaluma Schedule - caption: Bay Area 511 SamTrans Schedule params: name: Bay Area 511 SamTrans Schedule @@ -53,6 +56,9 @@ parts: - caption: Bay Area 511 Santa Clara Transit Schedule params: name: Bay Area 511 Santa Clara Transit Schedule + - caption: Bay Area 511 Santa Rosa CityBus Schedule + params: + name: Bay Area 511 Santa Rosa CityBus Schedule - caption: Bay Area 511 SolTrans Schedule params: name: Bay Area 511 SolTrans Schedule @@ -65,6 +71,9 @@ parts: - caption: Bay Area 511 Tri-Valley Wheels Schedule params: name: Bay Area 511 Tri-Valley Wheels Schedule + - caption: Bay Area 511 Union City Transit Schedule + params: + name: Bay Area 511 Union City Transit Schedule - caption: Bay Area 511 Vine Transit Schedule params: name: Bay Area 511 Vine Transit Schedule @@ -74,6 +83,9 @@ parts: - caption: Beach Cities GMV Schedule params: name: Beach Cities GMV Schedule + - caption: Bear Schedule + params: + name: Bear Schedule - caption: Beaumont Pass Schedule params: name: Beaumont Pass Schedule @@ -155,6 +167,9 @@ parts: - caption: OmniTrans Schedule params: name: OmniTrans Schedule + - caption: Pasadena Schedule + params: + name: Pasadena Schedule - caption: PresidiGo Schedule params: name: PresidiGo Schedule @@ -206,6 +221,9 @@ parts: - caption: Turlock Schedule params: name: Turlock Schedule + - caption: Unitrans Schedule + params: + name: Unitrans Schedule - caption: VCTC GMV Schedule params: name: VCTC GMV Schedule @@ -218,5 +236,8 @@ parts: - caption: Yolobus Schedule params: name: Yolobus Schedule + - caption: eTrans Schedule + params: + name: eTrans Schedule readme: ./rt_segment_speeds/README.md title: Average Speeds by Transit Operator Exploratory Charts