def saveSummaryTable(self, filename, statsTestResults, sampleName1, sampleName2, coverage): tableData = statsTestResults.tableData(True) # update table summarizing statistical results oneMinAlphaStr = str((1.0 - coverage)) tableHeadings = list(statsTestResults.profile.hierarchyHeadings) tableHeadings += [sampleName1, sampleName2] tableHeadings += ['Parent seq. 1', 'Parent seq. 2'] tableHeadings += ['Rel. freq. 1 (%)', 'Rel. freq. 2 (%)'] tableHeadings += ['p-values', 'p-values (corrected)'] tableHeadings += ['Effect size'] tableHeadings += [str(coverage * 100) + '% lower CI'] tableHeadings += [str(coverage * 100) + '% upper CI'] tableHeadings += ['Power (alpha = ' + oneMinAlphaStr + ')'] tableHeadings += [ 'Equal sample size (alpha = ' + oneMinAlphaStr + '; power = 0.80)' ] tableData = SortTableStrCol(tableData, 0) fout = open(filename, 'w') for heading in tableHeadings: fout.write(heading + '\t') fout.write('\n') for row in tableData: for entry in row: fout.write(str(entry) + '\t') fout.write('\n') fout.close()
def saveSummaryTable(self, filename, statsTestResults): tableData, tableHeadings = statsTestResults.tableData(True) tableData = SortTableStrCol(tableData, 0) fout = open(filename, 'w') for heading in tableHeadings: fout.write(heading + '\t') fout.write('\n') for row in tableData: for entry in row: fout.write(str(entry) + '\t') fout.write('\n') fout.close()
def sort(self, Ncol, order): ''' Sort table by given column number. ''' if len(self.arraydata) == 0: return self.emit(QtCore.SIGNAL("layoutAboutToBeChanged()")) dataIsNumeric = isNumber(self.arraydata[0][Ncol]) if dataIsNumeric: self.arraydata = sorted(self.arraydata , key = operator.itemgetter(Ncol)) else: self.arraydata = SortTableStrCol(self.arraydata, Ncol) if order == QtCore.Qt.DescendingOrder: self.arraydata.reverse() self.emit(QtCore.SIGNAL("layoutChanged()"))