could you help with this case? The original data is:
City: NYC {'bikeid': '17109', 'birth year': '', 'end station id': '401', 'end station latitude': '40.72019576', 'end station longitude': '-73.98997825', 'end station name': 'Allen St & Rivington St', 'gender': '0', 'start station id': '532', 'start station latitude': '40.710451', 'start station longitude': '-73.960876', 'start station name': 'S 5 Pl & S 4 St', 'starttime': '1/1/2016 00:09:55', 'stoptime': '1/1/2016 00:23:54', 'tripduration': '839', 'usertype': 'Customer'}
City: Chicago {'bikeid': '2295', 'birthyear': '1990', 'from_station_id': '156', 'from_station_name': 'Clark St & Wellington Ave', 'gender': 'Male', 'starttime': '3/31/2016 23:30', 'stoptime': '3/31/2016 23:46', 'to_station_id': '166', 'to_station_name': 'Ashland Ave & Wrightwood Ave', 'trip_id': '9080545', 'tripduration': '926', 'usertype': 'Subscriber'} City: Washington {'Bike number': 'W20842', 'Duration (ms)': '427387', 'End date': '3/31/2016 23:04', 'End station': 'Georgia Ave and Fairmont St NW', 'End station number': '31207', 'Member Type': 'Registered', 'Start date': '3/31/2016 22:57', 'Start station': 'Park Rd & Holmead Pl NW', 'Start station number': '31602'}
I want to extract the " city" and "trip duration" and convert the trip duration to minutes, then my code is:
def city_duration(filename):
city = filename.split('-')[0].split('/')[-1]
print('\nCity: {}'.format(city))
with open(filename,'r') as f_in:
trip_reader=csv.DictReader(f_in)
if city=="Washington":
duration_in_mins=int((trip_reader)['Duration (ms)'])/(60*60)
else:
duration_in_mins=int((trip_reader)['tripduration'])/(60)
city_duration=pprint(duration_in_mins)
return (city,duration_in_mins)
data_files = ['/Users/silviawu/Downloads//NYC-CitiBike-2016.csv',
'/Users/silviawu/Downloads//Chicago-Divvy-2016.csv',
'/Users/silviawu/Downloads/Washington-CapitalBikeshare-2016.csv',]
duration_trips={}
for data_file in data_files:
city,duration=city_duration(data_file)
duration_trips[city]=duration
I got the errors as below. Could you help? Thank you in advance!
City: NYC
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
/var/folders/3q/r809c67d4wx4qfpck_qjyz2c0000gn/T/ipykernel_40037/1621703074.py in <module>
20 duration_trips={}
21 for data_file in data_files:
---> 22 city,duration=city_duration(data_file)
23 duration_trips[city]=duration
/var/folders/3q/r809c67d4wx4qfpck_qjyz2c0000gn/T/ipykernel_40037/1621703074.py in city_duration(filename)
8 duration_in_mins=int((trip_reader)['Duration (ms)'])/(60*60)
9 else:
---> 10 duration_in_mins=int((trip_reader)['tripduration'])/(60)
11
12 city_duration=pprint(duration_in_mins)
TypeError: 'DictReader' object is not subscriptable