Count number of occurrences of list items in list of tuples - Printable Version +- Python Forum (https://python-forum.io) +-- Forum: Python Coding (https://python-forum.io/forum-7.html) +--- Forum: General Coding Help (https://python-forum.io/forum-8.html) +--- Thread: Count number of occurrences of list items in list of tuples (/thread-30724.html) |
Count number of occurrences of list items in list of tuples - t4keheart - Nov-03-2020 Having a hard time with this one guys- I need to write a function that takes 3 arguments: data, year_start, year_end. The data is a list of tuples. year_start and year_end are input by user. The function needs to count the number of occurrences in 'data', where any year in the date range is in position [0] (position [0] in data is the year). I need to generate lists of tuples for earthquake_count_by_year = [], and total_damage_by_year = [] in the format [(year, value), (year, value)] for each year in the range. Here's what I have: def summary_statistics(data, year_start, year_end): earthquake_count_by_year = [] total_damages_by_year = [] casualties_by_year = [] count = 0 years = [] year_start = int(year_start) year_end = int(year_end) if year_end >= year_start: # store range of years into list years = list(range(year_start, year_end+1)) for index, tuple in enumerate(data): if tuple[0] in years: count[tuple[0]] += 1 print(count)The above is just my attempt to count the number of occurrences in the input for each year. I feel like if I can get this much, I can figure out the rest. Here is the input for "data": [(2020, 1, 6.0, 'CHINA: XINJIANG PROVINCE', 39.831, 77.106, 1, 0, 2, 0), (2020, 1, 6.7, 'TURKEY: ELAZIG AND MALATYA PROVINCES', 38.39, 39.081, 41, 0, 1600, 0), (2018, 1, 7.7, 'CUBA: GRANMA; CAYMAN IS; JAMAICA', 19.44, -78.755, 0, 0, 0, 0), (2019, 2, 6.0, 'TURKEY: VAN; IRAN', 38.482, 44.367, 10, 0, 60, 0), (2018, 3, 5.4, 'BALKANS NW: CROATIA: ZAGREB', 45.897, 15.966, 1, 0, 27, 6000.0), (2020, 3, 5.7, 'USA: UTAH', 40.751, -112.078, 0, 0, 0, 48.5), (2020, 3, 7.5, 'RUSSIA: KURIL ISLANDS', 48.986, 157.693, 0, 0, 0, 0)] RE: Count number of occurrences of list items in list of tuples - deanhystad - Nov-03-2020 Start with writing the test to determine if a date is in the specified range. Can you do that? You don't need anything fancy like datetime, just check if a number is in a range. What you have is not going to work. It would only match the year_start or year_end, not the values inbetween. item in
|