Beispiel #1
0
                                   & (df['DID'] == dir_info.id)]
                dwell_time = (stop_arrivals['DEPARTURE_TIME'] -
                              stop_arrivals['TIME'])

                if not stop_arrivals.empty:
                    min_dist_quantiles = np.quantile(stop_arrivals['DIST'],
                                                     [0, 0.5, 1])
                    dwell_time_quantiles = np.quantile(dwell_time, [0, 0.5, 1])
                else:
                    min_dist_quantiles = []
                    dwell_time_quantiles = []

                num_arrivals = len(stop_arrivals['TIME'].values)

                dwell_time_str = ', '.join(
                    [util.render_dwell_time(q) for q in dwell_time_quantiles])
                min_dist_str = ', '.join([
                    render_distance(min_dist)
                    for min_dist in min_dist_quantiles
                ])

                print(
                    f"{'%3d' % num_arrivals} arrivals ({dwell_time_str}) ({min_dist_str}) \u0394 {render_distance(delta_dist)} @ {stop_info.id} [{dir_index}] - {stop_info.title}"
                )
                stop_rows.append(
                    (route_id, dir_info.id, stop_id, dir_index, stop_info.lat,
                     stop_info.lon, delta_dist, num_arrivals))
                prev_stop_info = stop_info
        '''
        arrivals1 = df[(df['SID'] == '3814')]
        arrivals2 = df[(df['SID'] == '3813')]
Beispiel #2
0
                                    start_time=start_time,
                                    end_time=end_time)

        if df.empty:
            print(f"no arrival times found for vehicle {vid} on {date_str}")
            continue

        df = df.sort_values(['TIME', 'TRIP'], axis=0)
        df['DATE_TIME'] = df['TIME'].apply(
            lambda t: datetime.fromtimestamp(t, tz))

        for row in df.itertuples():
            stop_id = row.SID
            stop_info = route_config.get_stop_info(stop_id)
            dir_info = route_config.get_direction_info(row.DID)

            try:
                stop_index = dir_info.get_stop_ids().index(stop_id)
            except ValueError:
                stop_index = None

            dwell_time = util.render_dwell_time(row.DEPARTURE_TIME - row.TIME)
            dist_str = f'{row.DIST}'.rjust(3)

            print(
                f"t={row.DATE_TIME.date()} {row.DATE_TIME.time()} ({row.TIME}) {dwell_time} vid:{row.VID}  #{row.TRIP} {dist_str}m  dir:{row.DID} stop:{stop_id} [{stop_index}] {stop_info.title if stop_info else '?'}"
            )

            num_stops += 1

    print(f'num_stops = {num_stops}')