Esempio n. 1
0
def jobs_within_30_min(jobs, travel_data):
    from urbansim.utils import misc
    j = pd.DataFrame({'zone_id': jobs.zone_id})
    td = travel_data.to_frame()
    zone_ids = np.unique(td.reset_index().to_zone_id)
    return misc.compute_range(td,
                              j.groupby('zone_id').size().reindex(index=zone_ids).fillna(0),
                              "am_auto_total_time",
                              30, agg=np.sum)
Esempio n. 2
0
def jobs_within_30_min(jobs, travel_data, zone_ids):
    travel_data = travel_data.to_frame()
    jobs = jobs.to_frame(columns=['zone_id'])
    return misc.compute_range(
        travel_data,
        jobs.groupby('zone_id').size().reindex(index=zone_ids).fillna(0),
        "am_single_vehicle_to_work_travel_time",
        30,
        agg=np.sum)
Esempio n. 3
0
def population_within_15_min(households, travel_data, zone_ids):
    travel_data = travel_data.to_frame()
    households = households.to_frame(columns=['persons', 'zone_id'])
    return misc.compute_range(
        travel_data,
        households.groupby('zone_id').persons.sum().reindex(
            index=zone_ids).fillna(0),
        "am_single_vehicle_to_work_travel_time",
        15,
        agg=np.sum)
Esempio n. 4
0
    def column_func(zones, beam_skims):
        results = misc.compute_range(
            beam_skims.to_frame(), zones.get_column(variable_to_summarize),
            impedance_measure, distance, agg=np.sum)

        if log:
            results = results.apply(eval('np.log1p'))

        if len(results) < len(zones):
            results = results.reindex(zones.index).fillna(0)

        return results
Esempio n. 5
0
    def column_func(zones):
        df = skims_table.to_frame()
        results = misc.compute_range(df,
                                     zones.get_column(variable_to_summarize),
                                     impedance_measure,
                                     distance,
                                     agg=agg)

        if len(results) < len(zones):
            results = results.reindex(zones.index).fillna(0)

        # add vars from orig zone, typically not included in skims
        results = results + zones[variable_to_summarize]

        if log:
            results = results.apply(eval('np.log1p'))

        return results
def population_within_15_min(households, travel_data, zone_ids):
    travel_data = travel_data.to_frame()
    households = households.to_frame(columns = ['persons', 'zone_id'])
    return misc.compute_range(travel_data, households.groupby('zone_id').persons.sum().reindex(index = zone_ids).fillna(0),
                                  "am_single_vehicle_to_work_travel_time",
                                  15, agg=np.sum)
def jobs_within_30_min(jobs, travel_data, zone_ids):
    travel_data = travel_data.to_frame()
    jobs = jobs.to_frame(columns = ['zone_id'])
    return misc.compute_range(travel_data, jobs.groupby('zone_id').size().reindex(index = zone_ids).fillna(0),
                                  "am_single_vehicle_to_work_travel_time",
                                  30, agg=np.sum)