reader = csv.DictReader( f, fieldnames = ( 'date','fatalities','location' )) 

my_data = []
for row in reader:
    my_data.append(row)

f.close()

#Sort by date - oldest to newest
my_data = sorted(my_data, key=lambda x: datetime.datetime.strptime(x['date'], '%m/%d/%Y'))

# Convert dates to "days since epoch" scale
my_data_epoched = []
for d in my_data:
    for x in xrange(0, int(d['fatalities'])):
        my_data_epoched.append({'days_since_epoch': mymidi.days_since_epoch(datetime.datetime.strptime(d['date'], '%m/%d/%Y')), 'fatalityid': float(x+1), 'total': d['fatalities'], 'location': d['location'], 'date': d['date']})

my_data_timed = [{'beat': mymidi.beat(d['days_since_epoch']), 'fatalityid': d['fatalityid'], 'total': d['total'], 'location': d['location']} for d in my_data_epoched]

start_time = my_data_timed[0]['beat']

def mag_to_pitch_tuned(fatalities):
    # Where does this data point sit in the domain of your data? (I.E. the min fatalities is 5, the max in 27). In this case the optional 'True' means the scale is reversed, so the highest value will return the lowest percentage.
    scale_pct = mymidi.linear_scale_pct(0, 49, fatalities, True)

    # Another option: Linear scale, reverse order
    # scale_pct = mymidi.linear_scale_pct(3, 5.7, fatalities, True)

    # Another option: Logarithmic scale, reverse order
    # scale_pct = mymidi.log_scale_pct(3, 5.7, fatalities, True)
Example #2
0
    {'event_date': '01-08-2014', 'fatalities': 1},
    {'event_date': '01-09-2014', 'fatalities': 1},
    {'event_date': '01-10-2014', 'fatalities': 1},
    {'event_date': '01-11-2014', 'fatalities': 1},
    {'event_date': '01-12-2014', 'fatalities': 1},
    {'event_date': '01-01-2015', 'fatalities': 1},
    {'event_date': '01-02-2015', 'fatalities': 1},
    {'event_date': '01-03-2015', 'fatalities': 1},
    {'event_date': '01-04-2015', 'fatalities': 1},
    {'event_date': '01-05-2015', 'fatalities': 1},
    {'event_date': '01-06-2015', 'fatalities': 1},
    {'event_date': '01-07-2015', 'fatalities': 1},
    {'event_date': '01-08-2015', 'fatalities': 1}
]

my_data_epoched = [{'days_since_epoch': mymidi.days_since_epoch(datetime.datetime.strptime(d['event_date'], '%d-%m-%Y')), 'fatalities': d['fatalities']} for d in my_data]

my_data_timed = [{'beat': mymidi.beat(d['days_since_epoch']), 'c': d['fatalities']} for d in my_data_epoched]

start_time = my_data_timed[0]['beat']


def mag_to_pitch_tuned(fatalities):
    # Where does this data point sit in the domain of your data? (I.E. the min fatalities is 5, the max in 27). In this case the optional 'True' means the scale is reversed, so the highest value will return the lowest percentage.
    scale_pct = mymidi.linear_scale_pct(0, 45, fatalities, True)

    # Another option: Linear scale, reverse order
    # scale_pct = mymidi.linear_scale_pct(3, 5.7, fatalities, True)

    # Another option: Logarithmic scale, reverse order
    # scale_pct = mymidi.log_scale_pct(3, 5.7, fatalities, True)
Example #3
0
my_data = [
    {"event_date": "20-07-2012", "fatalities": 12.0},
    {"event_date": "05-08-2012", "fatalities": 7.0},
    {"event_date": "27-09-2012", "fatalities": 7.0},
    {"event_date": "14-12-2012", "fatalities": 27.0},
    {"event_date": "07-06-2013", "fatalities": 6.0},
    {"event_date": "16-09-2013", "fatalities": 13.0},
    {"event_date": "23-05-2014", "fatalities": 7.0},
    {"event_date": "18-06-2015", "fatalities": 9.0},
    {"event_date": "16-07-2015", "fatalities": 5.0},
]

my_data_epoched = [
    {
        "days_since_epoch": mymidi.days_since_epoch(datetime.datetime.strptime(d["event_date"], "%d-%m-%Y")),
        "fatalities": d["fatalities"],
    }
    for d in my_data
]

my_data_timed = [{"beat": mymidi.beat(d["days_since_epoch"]), "fatalities": d["fatalities"]} for d in my_data_epoched]

start_time = my_data_timed[0]["beat"]


def mag_to_pitch_tuned(fatalities):
    # Where does this data point sit in the domain of your data? (I.E. the min fatalities is 5, the max in 27). In this case the optional 'True' means the scale is reversed, so the highest value will return the lowest percentage.
    scale_pct = mymidi.linear_scale_pct(5, 27, fatalities, True)

    # Another option: Linear scale, reverse order