Skip to content

Instantly share code, notes, and snippets.

@nijave
Created November 8, 2017 23:11
Show Gist options
  • Save nijave/650bc5d368915d127fcee07fd6ba42a2 to your computer and use it in GitHub Desktop.
Save nijave/650bc5d368915d127fcee07fd6ba42a2 to your computer and use it in GitHub Desktop.
import pickle
import numpy as np
import csv
out = csv.writer(open('modem_stats.csv', 'w'), lineterminator='\n')
out.writerow(['time','type','label','power(dBmV)','SNR(dB)'])
def process_event(item):
date = ' '.join(item['status']['Time and Date'].split(' ')[1:])
down_stats = [
[date]*len(item['down'].to_dict()['Unnamed: 0']),
['down']*len(item['down'].to_dict()['Unnamed: 0']),
[v for _,v in item['down'].to_dict()['Unnamed: 0'].items()],
[v.split(' ')[0] for _,v in item['down'].to_dict()['Power'].items()],
[v.split(' ')[0] for _,v in item['down'].to_dict()['SNR'].items()]
]
up_stats = [
[date]*len(item['up'].to_dict()['Unnamed: 0']),
['up']*len(item['up'].to_dict()['Unnamed: 0']),
[v for _,v in item['up'].to_dict()['Unnamed: 0'].items()],
[v.split(' ')[0] for _,v in item['up'].to_dict()['Power'].items()],
['']*len(item['up'].to_dict()['Unnamed: 0'])
]
out.writerows(np.array(down_stats).T)
out.writerows(np.array(up_stats).T)
p = open('modem_stats.dat', 'rb')
while True:
try:
item = pickle.load(p)
process_event(item)
except:
break
p.close()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment