minimds.py 文件源码

python
阅读 17 收藏 0 点赞 0 评论 0

项目:miniMDS 作者: seqcode 项目源码 文件源码
def main():
    parser = argparse.ArgumentParser(description="Reconstruct 3D coordinates from normalized intrachromosomal Hi-C BED files.")
    parser.add_argument("path", help="path to intrachromosomal Hi-C BED file")
    parser.add_argument("--classical", action="store_true", help="use classical MDS (default: metric MDS)")
    parser.add_argument("-l", help="path to low-resolution intrachromosomal Hi-C BED file")
    parser.add_argument("-p", type=float, default=0.1, help="domain size parameter: larger value means fewer clusters created (for partitioned MDS only)")
    parser.add_argument("-m", type=float, default=0.05, help="minimum domain size parameter: prevents clusters from being too small (for partitioned MDS only)")
    parser.add_argument("-o", help="path to output file")
    parser.add_argument("-r", default=32000000, help="maximum RAM to use (in kb)")
    parser.add_argument("-n", default=3, help="number of threads")
    parser.add_argument("-a", type=float, default=4, help="alpha factor for converting contact frequencies to physical distances")
    args = parser.parse_args()

    if args.l is None:  #not partitioned
        cluster = fullMDS(args.path, args.classical, args.a)

    else:   #partitioned
        params = (args.p, args.m, args.r, args.n, args.a)
        names = ("Domain size parameter", "Minimum domain size", "Maximum memory", "Number of threads", "Alpha")
        intervals = ((0,1), (0,1), (0, None), (0, None), (1, None))
        if not tools.args_are_valid(params, names, intervals):
            sys.exit(0)

        cluster = partitionedMDS(args.path, args.l, params)

    if args.o is not None:
        cluster.write(args.o)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号