44 lines
931 B
Python
44 lines
931 B
Python
import ast
|
|
from statistics import mean, pstdev
|
|
import sys
|
|
|
|
import click
|
|
from scipy.stats import entropy
|
|
|
|
from matplotlib import pyplot as plt
|
|
|
|
|
|
def reader(path):
|
|
with open(path) as h:
|
|
for line in h:
|
|
line = line.strip()
|
|
try:
|
|
s, p, a, f = line.split("\t")
|
|
except:
|
|
print(f"skipping line: {line}", file=sys.stderr)
|
|
else:
|
|
try:
|
|
yield ast.literal_eval(s), ast.literal_eval(p), ast.literal_eval(a), ast.literal_eval(f)
|
|
except:
|
|
print(f"malformed line: {s}")
|
|
|
|
|
|
def get_stats(seq):
|
|
for s, p, a, f in seq:
|
|
print(s)
|
|
print(p)
|
|
print(len(s), len(p), len(a), len(f))
|
|
for x in a:
|
|
print(len(x))
|
|
print()
|
|
|
|
|
|
@click.command()
|
|
@click.argument("path")
|
|
def main(path):
|
|
get_stats(reader(path))
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|