Esempio n. 1
0
def rankAndMerge(folderName, contigsNamesList, contigsFilename, readsFilename,
                 scoreList, contigGapReadLookUpDic, mScoreThres, conScoreThres,
                 scoreListOutputName, outputContigsFilename,
                 dummyNodeDataRobot):

    scoreList.sort(key=itemgetter(-1, -2), reverse=True)
    houseKeeperLib.dumpDataToJson(folderName, scoreListOutputName, scoreList)

    mergeList = cutOffToFormMergeList(scoreList, mScoreThres, conScoreThres)

    dummyNodeDataRobot.removeUsedDummies(mergeList)

    dummyNodeDataRobot.addAllContigs(contigsNamesList)

    nameList = dummyNodeDataRobot.getNameList()

    GCondensed = condenseEdgesOnlyGraph(nameList)

    readingListWithDummy = GCondensed.mergeListToReadingList(mergeList)

    readingList = dummyNodeDataRobot.mapReadingList(readingListWithDummy)

    readContigGraphToContigs(folderName, contigsFilename, readsFilename,
                             contigGapReadLookUpDic, readingList,
                             outputContigsFilename)
Esempio n. 2
0
def rankAndMerge(folderName, contigsNamesList, contigsFilename, readsFilename, scoreList, contigGapReadLookUpDic, mScoreThres, conScoreThres, scoreListOutputName, outputContigsFilename, dummyNodeDataRobot):
    
    scoreList.sort(key = itemgetter(-1, -2), reverse = True)
    houseKeeperLib.dumpDataToJson(folderName , scoreListOutputName, scoreList)
    
    mergeList = cutOffToFormMergeList(scoreList, mScoreThres, conScoreThres )

    dummyNodeDataRobot.removeUsedDummies(mergeList)

    dummyNodeDataRobot.addAllContigs(contigsNamesList)
    
    nameList = dummyNodeDataRobot.getNameList()

    GCondensed = condenseEdgesOnlyGraph(nameList)

    readingListWithDummy = GCondensed.mergeListToReadingList(mergeList)

    readingList = dummyNodeDataRobot.mapReadingList(readingListWithDummy)
    
    readContigGraphToContigs(folderName,  contigsFilename, readsFilename, contigGapReadLookUpDic, readingList, outputContigsFilename)
Esempio n. 3
0
def batchPostMe(folderName, mummerLink, contigsFilename, readsFilename, noAlignment):
    commandsList, settingsList = [],  []

    if not noAlignment:
        commandsList.append("python postme.py " \
            + " -o "+ folderName                \
            + " -a " + mummerLink               \
            + " -r " +  readsFilename           \
            + " -c " + contigsFilename          \
            + " -s T -na F -sn scoreList.json -on improved.fasta -ms 2 -cs 0.95")
        

    for i in range(1, 3):
        for j in range(5):
            mScoreThres, cScoreThres,  =  i, 0.95 - j*0.05
            settingsList.append(["score_" +  str(len(settingsList)) + ".fasta", \
                                 "imp_" + str(len(settingsList)) + ".fasta",    \
                                 mScoreThres, cScoreThres])

    commonHeader = "python postme.py " \
        + " -o "+ folderName           \
        + " -a " + mummerLink          \
        + " -r " +  readsFilename      \
        + " -c " + contigsFilename     \
        + " -s T -na T "

    for eachSetting in settingsList:
        command = commonHeader                       \
                    + " -sn " + str(eachSetting[0])  \
                    + " -on " + str(eachSetting[1])  \
                    + " -ms " + str(eachSetting[2])  \
                    + " -cs " + str(eachSetting[3]) 
        
        commandsList.append(command) 

    for eachCommand in commandsList: 
        os.system(eachCommand)

    houseKeeperLib.dumpDataToJson(folderName, "settingsList.json" ,settingsList)