def regionPassesCriteria(regionFinder, sumAll, numStarts, regionLength, stringency=1):
- return sumAll >= stringency * regionFinder.minHits and numStarts > stringency * regionFinder.minRatio and regionLength > stringency * regionFinder.readlen
+ minTotalReads = stringency * regionFinder.minHits
+ minNumReadStarts = stringency * regionFinder.minRatio
+ minRegionLength = stringency * regionFinder.readlen
+
+ return sumAll >= minTotalReads and numStarts > minNumReadStarts and regionLength > minRegionLength
def trimRegion(region, regionFinder, peak, regionStop, trimValue, currentReadList, totalReadCount):
except ZeroDivisionError:
return
- region.multiP = multiP
+ region.multiP = min(multiP, 100.)
def regionAndPeakPass(regionFinder, region, regionLength, peakScore, plusRatio):
def calculatePValue(sum, poissonmean):
pValue = math.exp(-poissonmean)
+ #TODO: 798: DeprecationWarning: integer argument expected, got float - for i in xrange(sum)
for i in xrange(sum):
pValue *= poissonmean
pValue /= i+1