__author__ = 'stubbfel' import sys sys.path.insert(0, '../../json') sys.path.insert(0, '../../csv') import jsonutility as ju import csvutilies as csv import glob from collections import OrderedDict def exportRV2CSV(files, output): resulttable = [["time"]] maxRow = 0 for fileName in files: jsonObject = ju.readJSON(fileName) jsonObject = OrderedDict(sorted(jsonObject.items(), key=lambda t: float(t[0]))) column = [fileName] for value in jsonObject.values(): if float(value) >= 0: column.append(value) resulttable.append(column) tmpMaxRow = len(column) if tmpMaxRow > maxRow: maxRow = tmpMaxRow colCount = len(resulttable) for i in range(1, maxRow): resulttable[0].append(i-1) for j in range(1, colCount): if i > len(resulttable[j]): resulttable[j].append(0) print(resulttable) csv.writeCSV(output, zip(*resulttable)) def exportRTT2CSV(files, output): resulttable = [["msgIndex"]] maxRow = 0 for fileName in files: jsonObject = ju.readJSON(fileName) jsonObject = OrderedDict(sorted(jsonObject.items(), key=lambda t: float(t[0]))) column = [fileName] for value in jsonObject.values(): if float(value) >= 0: column.append(value) resulttable.append(column) tmpMaxRow = len(column) if tmpMaxRow > maxRow: maxRow = tmpMaxRow colCount = len(resulttable) for i in range(1, maxRow): resulttable[0].append(i-1) for j in range(1, colCount): if i > len(resulttable[j]): resulttable[j].append(0) print(resulttable) csv.writeCSV(output, zip(*resulttable)) def exportLocktime2CSV(files, output): resulttable = [] maxRow = 0 for fileName in files: jsonObject = ju.readJSON(fileName) runTime = float(jsonObject["runtime"]) locktTime = float(jsonObject["locktime"]) ratioTime = locktTime/runTime resulttable.append([fileName, ratioTime]) print(resulttable) csv.writeCSV(output, zip(*resulttable)) def exportRTT2CSV(files, output): resulttable = [] maxRow = 0 for fileName in files: jsonObject = ju.readJSON(fileName) rtt = [fileName] rtt.extend(jsonObject.values()) resulttable.append(rtt) print(resulttable) csv.writeCSV(output, zip(*resulttable)) exportRV2CSV(glob.glob("[0-9][0-9][0-9].json_rv1"),"all.csv") exportRV2CSV(glob.glob("[0][0-9][0-9].json_rv1"),"0xx.csv") exportRV2CSV(glob.glob("[1][0-9][0-9].json_rv1"),"1xx.csv") exportRV2CSV(glob.glob("[2][0-9][0-9].json_rv1"),"2xx.csv") exportRV2CSV(glob.glob("[0-9][0][0-9].json_rv1"),"x0x.csv") exportRV2CSV(glob.glob("[0-9][1][0-9].json_rv1"),"x1x.csv") exportRV2CSV(glob.glob("[0-9][2][0-9].json_rv1"),"x2x.csv") exportRV2CSV(glob.glob("[0-9][0-9][0].json_rv1"),"xx0.csv") exportRV2CSV(glob.glob("[0-9][0-9][1].json_rv1"),"xx1.csv") exportRV2CSV(glob.glob("[0-9][0-9][2].json_rv1"),"xx2.csv") exportRV2CSV(glob.glob("[0-9][0-9][3].json_rv1"),"xx3.csv") exportRV2CSV(glob.glob("[0-9][0-9][4].json_rv1"),"xx4.csv") exportRV2CSV(glob.glob("[0-9][0-9][5].json_rv1"),"xx5.csv") exportRV2CSV(glob.glob("[0-9][0-9][7].json_rv1"),"xx7.csv") exportRV2CSV(glob.glob("[2][0][0-9].json_rv1"),"20x.csv") exportLocktime2CSV(glob.glob("[0-9][0-9][0-9].json"),"all-locktime.csv") exportLocktime2CSV(glob.glob("[0][0-9][0-9].json"),"0xx-locktime.csv") exportLocktime2CSV(glob.glob("[1][0-9][0-9].json"),"1xx-locktime.csv") exportLocktime2CSV(glob.glob("[2][0-9][0-9].json"),"2xx-locktime.csv") exportLocktime2CSV(glob.glob("[0-9][0][0-9].json"),"x0x-locktime.csv") exportLocktime2CSV(glob.glob("[0-9][1][0-9].json"),"x1x-locktime.csv") exportLocktime2CSV(glob.glob("[0-9][2][0-9].json"),"x2x-locktime.csv") exportLocktime2CSV(glob.glob("[0-9][0-9][0].json"),"xx0-locktime.csv") exportLocktime2CSV(glob.glob("[0-9][0-9][1].json"),"xx1-locktime.csv") exportLocktime2CSV(glob.glob("[0-9][0-9][2].json"),"xx2-locktime.csv") exportLocktime2CSV(glob.glob("[0-9][0-9][3].json"),"xx3-locktime.csv") exportLocktime2CSV(glob.glob("[0-9][0-9][4].json"),"xx4-locktime.csv") exportLocktime2CSV(glob.glob("[0-9][0-9][5].json"),"xx5-locktime.csv") exportLocktime2CSV(glob.glob("[0-9][0-9][7].json"),"xx7-locktime.csv") exportLocktime2CSV(glob.glob("[2][0][0-9].json"),"20x-locktime.csv") exportRTT2CSV(glob.glob("[0-9][0-9][0-9].json_rtt"),"all-rtt.csv") exportRTT2CSV(glob.glob("[0][0-9][0-9].json_rtt"),"0xx-rtt.csv") exportRTT2CSV(glob.glob("[1][0-9][0-9].json_rtt"),"1xx-rtt.csv") exportRTT2CSV(glob.glob("[2][0-9][0-9].json_rtt"),"2xx-rtt.csv") exportRTT2CSV(glob.glob("[0-9][0][0-9].json_rtt"),"x0x-rtt.csv") exportRTT2CSV(glob.glob("[0-9][1][0-9].json_rtt"),"x1x-rtt.csv") exportRTT2CSV(glob.glob("[0-9][2][0-9].json_rtt"),"x2x-rtt.csv") exportRTT2CSV(glob.glob("[0-9][0-9][0].json_rtt"),"xx0-rtt.csv") exportRTT2CSV(glob.glob("[0-9][0-9][1].json_rtt"),"xx1-rtt.csv") exportRTT2CSV(glob.glob("[0-9][0-9][2].json_rtt"),"xx2-rtt.csv") exportRTT2CSV(glob.glob("[0-9][0-9][3].json_rtt"),"xx3-rtt.csv") exportRTT2CSV(glob.glob("[0-9][0-9][4].json_rtt"),"xx4-rtt.csv") exportRTT2CSV(glob.glob("[0-9][0-9][5].json_rtt"),"xx5-rtt.csv") exportRTT2CSV(glob.glob("[0-9][0-9][7].json_rtt"),"xx7-rtt.csv") exportRTT2CSV(glob.glob("[2][0][0-9].json_rtt"),"20x-rtt.csv")