view median_size.py @ 0:a53acd38d77e draft

Uploaded
author estrain
date Tue, 24 Mar 2020 08:54:42 -0400
parents
children
line wrap: on
line source

#!/usr/bin/env

## Errol Strain (estrain@gmail.com)
## calculate median insert size from sam file

import numpy as np

def get_data(infile):
    lengths = []
    for line in infile:
        if line.startswith('@'):
            pass
        else:
            line = line.rsplit()
            length = int(line[8])
            if length > 0:
                lengths.append(length)
            else:
                pass
    return lengths

if __name__ == "__main__":
    import sys
    lengths = get_data(sys.stdin)
    md = int(np.median(lengths))
print(md)