From 26b01f38f513458169c765e0399a58f819762262 Mon Sep 17 00:00:00 2001 From: Craig Oates Date: Sat, 8 May 2021 16:16:43 +0100 Subject: [PATCH] tally readings per second using list of tuples. This replaces the original way of doing it with a dictionary. The change was brought about because the previous data loading function was omitting duplicate entries (I.E. multiple readings from the same second in time). --- src/flicker.py | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/src/flicker.py b/src/flicker.py index bcb5136..0e8024d 100644 --- a/src/flicker.py +++ b/src/flicker.py @@ -1,19 +1,19 @@ import csv import datetime from services import io_services, log_services +# import pdb def tally_readings_per_second2(data): time_tallies = dict() - for k, v in data.items(): - # print(f"{k} : {v}") - # time_str = k - if (k in time_tallies): - time_tallies[k] = (time_tallies[k]) + 1 - print(f"Updated {time_tallies[k]}") + for item in data: + # print(item[0]) + key = item[0] + if (key in time_tallies): + time_tallies[key] = time_tallies[key] + 1 + # print(f"Updated {time_tallies[key]}") else: - time_tallies[k] = 1 - # print(f"Added: {time_tallies[k]}") - # print(time_tallies) + time_tallies[key] = 1 + #print(f"Added {time_tallies[key]}") return time_tallies def tally_readings_per_second(): @@ -73,7 +73,9 @@ def main(): # rsp_above_two = get_rps_above(2, time_tallies) # flicker_tallies = tally_flickers(rsp_above_two, time_tallies) raw_data = io_services.load_raw_data("data/test-data-lite.csv") - log_services.print_dictionary(raw_data) + # log_services.print_list(raw_data) + time_tallies = tally_readings_per_second2(raw_data) + log_services.print_dictionary(time_tallies) if __name__ == "__main__": main()