Skip to content

Commit

Permalink
Parse values to appropriate types
Browse files Browse the repository at this point in the history
  • Loading branch information
RobertLucey committed Dec 31, 2021
1 parent e11d190 commit 6826c03
Show file tree
Hide file tree
Showing 3 changed files with 67 additions and 68 deletions.
30 changes: 15 additions & 15 deletions src/road_collisions_uk/models/casualty.py
Original file line number Diff line number Diff line change
Expand Up @@ -69,21 +69,21 @@ class Casualty():
]

def __init__(self, *args, **kwargs):
self.vehicle_reference = kwargs['vehicle_reference']
self.casualty_reference = kwargs['casualty_reference']
self.casualty_class = kwargs['casualty_class']
self.sex_of_casualty = kwargs['sex_of_casualty']
self.age_of_casualty = kwargs['age_of_casualty']
self.age_band_of_casualty = kwargs['age_band_of_casualty']
self.casualty_severity = kwargs['casualty_severity']
self.pedestrian_location = kwargs['pedestrian_location']
self.pedestrian_movement = kwargs['pedestrian_movement']
self.car_passenger = kwargs['car_passenger']
self.bus_or_coach_passenger = kwargs['bus_or_coach_passenger']
self.pedestrian_road_maintenance_worker = kwargs['pedestrian_road_maintenance_worker']
self.casualty_type = kwargs['casualty_type']
self.casualty_home_area_type = kwargs['casualty_home_area_type']
self.casualty_imd_decile = kwargs['casualty_imd_decile']
self.vehicle_reference = int(kwargs['vehicle_reference'])
self.casualty_reference = int(kwargs['casualty_reference'])
self.casualty_class = int(kwargs['casualty_class'])
self.sex_of_casualty = int(kwargs['sex_of_casualty'])
self.age_of_casualty = int(kwargs['age_of_casualty'])
self.age_band_of_casualty = int(kwargs['age_band_of_casualty'])
self.casualty_severity = int(kwargs['casualty_severity'])
self.pedestrian_location = int(kwargs['pedestrian_location'])
self.pedestrian_movement = int(kwargs['pedestrian_movement'])
self.car_passenger = int(kwargs['car_passenger'])
self.bus_or_coach_passenger = int(kwargs['bus_or_coach_passenger'])
self.pedestrian_road_maintenance_worker = int(kwargs['pedestrian_road_maintenance_worker'])
self.casualty_type = int(kwargs['casualty_type'])
self.casualty_home_area_type = int(kwargs['casualty_home_area_type'])
self.casualty_imd_decile = int(kwargs['casualty_imd_decile'])

def serialize(self):
return {
Expand Down
59 changes: 29 additions & 30 deletions src/road_collisions_uk/models/collision.py
Original file line number Diff line number Diff line change
Expand Up @@ -214,41 +214,40 @@ class Collision(RawCollision):
def __init__(self, **kwargs):

self.accident_index = kwargs['accident_index']
self.accident_severity = int(kwargs['accident_severity'])
self.accident_year = int(kwargs['accident_year'])

self.location_easting_osgr = kwargs['location_easting_osgr']
self.location_northing_osgr = kwargs['location_northing_osgr']
self.longitude = kwargs['longitude']
self.latitude = kwargs['latitude']
self.police_force = kwargs['police_force']
self.accident_severity = kwargs['accident_severity']
self.number_of_vehicles = kwargs['number_of_vehicles']
self.number_of_casualties = kwargs['number_of_casualties']
self.carriageway_hazards = int(kwargs['carriageway_hazards'])
self.date = kwargs['date']
# skipping day of week as we have date
self.time = kwargs['time']
self.local_authority_district = kwargs['local_authority_district']
self.local_authority_ons_district = kwargs['local_authority_ons_district']
self.did_police_officer_attend_scene_of_accident = int(kwargs['did_police_officer_attend_scene_of_accident'])
self.first_road_class = int(kwargs['first_road_class'])
self.first_road_number = int(kwargs['first_road_number'])
self.junction_control = int(kwargs['junction_control'])
self.junction_detail = int(kwargs['junction_detail'])
self.latitude = float(kwargs['latitude']) if kwargs['latitude'] != 'NULL' else None
self.light_conditions = int(kwargs['light_conditions'])
self.local_authority_district = int(kwargs['local_authority_district'])
self.local_authority_highway = kwargs['local_authority_highway']
self.first_road_class = kwargs['first_road_class']
self.first_road_number = kwargs['first_road_number']
self.road_type = kwargs['road_type']
self.speed_limit = kwargs['speed_limit']
self.junction_detail = kwargs['junction_detail']
self.junction_control = kwargs['junction_control']
self.second_road_class = kwargs['second_road_class']
self.second_road_number = kwargs['second_road_number']
self.pedestrian_crossing_human_control = kwargs['pedestrian_crossing_human_control']
self.pedestrian_crossing_physical_facilities = kwargs['pedestrian_crossing_physical_facilities']
self.light_conditions = kwargs['light_conditions']
self.weather_conditions = kwargs['weather_conditions']
self.road_surface_conditions = kwargs['road_surface_conditions']
self.special_conditions_at_site = kwargs['special_conditions_at_site']
self.carriageway_hazards = kwargs['carriageway_hazards']
self.urban_or_rural_area = kwargs['urban_or_rural_area']
self.did_police_officer_attend_scene_of_accident = kwargs['did_police_officer_attend_scene_of_accident']
self.trunk_road_flag = kwargs['trunk_road_flag']
self.local_authority_ons_district = kwargs['local_authority_ons_district']
self.location_easting_osgr = int(kwargs['location_easting_osgr']) if kwargs['latitude'] != 'NULL' else None
self.location_northing_osgr = int(kwargs['location_northing_osgr']) if kwargs['latitude'] != 'NULL' else None
self.longitude = float(kwargs['longitude']) if kwargs['latitude'] != 'NULL' else None
self.lsoa_of_accident_location = kwargs['lsoa_of_accident_location']
self.number_of_casualties = int(kwargs['number_of_casualties'])
self.number_of_vehicles = int(kwargs['number_of_vehicles'])
self.pedestrian_crossing_human_control = int(kwargs['pedestrian_crossing_human_control'])
self.pedestrian_crossing_physical_facilities = int(kwargs['pedestrian_crossing_physical_facilities'])
self.police_force = int(kwargs['police_force'])
self.road_surface_conditions = int(kwargs['road_surface_conditions'])
self.road_type = int(kwargs['road_type'])
self.second_road_class = int(kwargs['second_road_class'])
self.second_road_number = int(kwargs['second_road_number'])
self.special_conditions_at_site = int(kwargs['special_conditions_at_site'])
self.speed_limit = int(kwargs['speed_limit'])
self.time = kwargs['time']
self.trunk_road_flag = int(kwargs['trunk_road_flag'])
self.urban_or_rural_area = int(kwargs['urban_or_rural_area'])
self.weather_conditions = int(kwargs['weather_conditions'])

self.casualties = kwargs['casualties']
self.vehicles = kwargs['vehicles']
Expand Down
46 changes: 23 additions & 23 deletions src/road_collisions_uk/models/vehicle.py
Original file line number Diff line number Diff line change
Expand Up @@ -78,31 +78,31 @@ class Vehicle():
]

def __init__(self, *args, **kwargs):
self.age_band_of_driver = kwargs['age_band_of_driver']
self.age_of_driver = kwargs['age_of_driver']
self.age_of_vehicle = kwargs['age_of_vehicle']
self.driver_home_area_type = kwargs['driver_home_area_type']
self.driver_imd_decile = kwargs['driver_imd_decile']
self.engine_capacity_cc = kwargs['engine_capacity_cc']
self.first_point_of_impact = kwargs['first_point_of_impact']
self.age_band_of_driver = int(kwargs['age_band_of_driver'])
self.age_of_driver = int(kwargs['age_of_driver'])
self.age_of_vehicle = int(kwargs['age_of_vehicle'])
self.driver_home_area_type = int(kwargs['driver_home_area_type'])
self.driver_imd_decile = int(kwargs['driver_imd_decile'])
self.engine_capacity_cc = int(kwargs['engine_capacity_cc']) # is this ever a float?
self.first_point_of_impact = int(kwargs['first_point_of_impact'])
self.generic_make_model = kwargs['generic_make_model']
self.hit_object_in_carriageway = kwargs['hit_object_in_carriageway']
self.hit_object_off_carriageway = kwargs['hit_object_off_carriageway']
self.journey_purpose_of_driver = kwargs['journey_purpose_of_driver']
self.junction_location = kwargs['junction_location']
self.propulsion_code = kwargs['propulsion_code']
self.sex_of_driver = kwargs['sex_of_driver']
self.skidding_and_overturning = kwargs['skidding_and_overturning']
self.towing_and_articulation = kwargs['towing_and_articulation']
self.hit_object_in_carriageway = int(kwargs['hit_object_in_carriageway'])
self.hit_object_off_carriageway = int(kwargs['hit_object_off_carriageway'])
self.journey_purpose_of_driver = int(kwargs['journey_purpose_of_driver'])
self.junction_location = int(kwargs['junction_location'])
self.propulsion_code = int(kwargs['propulsion_code'])
self.sex_of_driver = int(kwargs['sex_of_driver'])
self.skidding_and_overturning = int(kwargs['skidding_and_overturning'])
self.towing_and_articulation = int(kwargs['towing_and_articulation'])

self.vehicle_direction_from = kwargs['vehicle_direction_from']
self.vehicle_direction_to = kwargs['vehicle_direction_to']
self.vehicle_leaving_carriageway = kwargs['vehicle_leaving_carriageway']
self.vehicle_left_hand_drive = kwargs['vehicle_left_hand_drive']
self.vehicle_location_restricted_lane = kwargs['vehicle_location_restricted_lane']
self.vehicle_manoeuvre = kwargs['vehicle_manoeuvre']
self.vehicle_reference = kwargs['vehicle_reference']
self.vehicle_type = kwargs['vehicle_type']
self.vehicle_direction_from = int(kwargs['vehicle_direction_from'])
self.vehicle_direction_to = int(kwargs['vehicle_direction_to'])
self.vehicle_leaving_carriageway = int(kwargs['vehicle_leaving_carriageway'])
self.vehicle_left_hand_drive = int(kwargs['vehicle_left_hand_drive'])
self.vehicle_location_restricted_lane = int(kwargs['vehicle_location_restricted_lane'])
self.vehicle_manoeuvre = int(kwargs['vehicle_manoeuvre'])
self.vehicle_reference = int(kwargs['vehicle_reference'])
self.vehicle_type = int(kwargs['vehicle_type'])

def serialize(self):
return {
Expand Down

0 comments on commit 6826c03

Please sign in to comment.