예제 #1
0
 def prt_gos_grouped(self, prt, **kws_grp):
     """Print grouped GO list."""
     prtfmt = self.datobj.kws['fmtgo']
     wrobj = WrXlsxSortedGos(self.name, self.sortobj)
     # Keyword arguments: control content: hdrgo_prt section_prt top_n use_sections
     desc2nts = self.sortobj.get_desc2nts(**kws_grp)
     wrobj.prt_txt_desc2nts(prt, desc2nts, prtfmt)
예제 #2
0
 def prt_gos_grouped(self, prt, **kws_grp):
     """Print grouped GO list."""
     prtfmt = self.datobj.kws['fmtgo']
     wrobj = WrXlsxSortedGos(self.name, self.sortobj)
     # Keyword arguments: control content: hdrgo_prt section_prt top_n use_sections
     desc2nts = self.sortobj.get_desc2nts(**kws_grp)
     wrobj.prt_txt_desc2nts(prt, desc2nts, prtfmt)
예제 #3
0
 def write(self, fout_xlsx=None, fout_txt=None, verbose=False):
     """Command-line interface for go_draw script."""
     sortby = self._get_fncsortnt(self.objgrpd.grprobj.gosubdag.prt_attr['flds'])
     kws_sort = {'sortby' if verbose else 'section_sortby': sortby}
     sortobj = Sorter(self.objgrpd.grprobj, **kws_sort)
     # KWS: hdrgo_prt=True section_prt=None top_n=None use_sections=True
     # RET: {sortobj, sections, hdrgo_prt} or {sortobj flat hdrgo_prt}
     desc2nts = sortobj.get_desc2nts_fnc(
         hdrgo_prt=verbose,
         section_prt=True,
         top_n=None,
         use_sections=True)
     # print('FFFF', desc2nts['flds'])
     # Write user GO IDs in sections
     objgowr = WrXlsxSortedGos("init", sortobj, self.objgrpd.ver_list)
     if fout_xlsx is not None:
         kws_xlsx = {'shade_hdrgos':verbose}
         if not verbose:
             kws_xlsx['prt_flds'] = [f for f in desc2nts['flds'] if f not in self.excl_flds]
         objgowr.wr_xlsx_nts(fout_xlsx, desc2nts, **kws_xlsx)
         fout_desc = '{BASE}_desc.txt'.format(BASE=os.path.splitext(fout_xlsx)[0])
         self._wr_ver_n_key(fout_desc, verbose)
     if fout_txt is not None:
         self._wr_txt_nts(fout_txt, desc2nts, objgowr, verbose)
     if fout_xlsx is None and fout_txt is None:
         self._prt_ver_n_key(sys.stdout, verbose)
         prtfmt = self._get_prtfmt(objgowr, verbose)
         summary_dct = objgowr.prt_txt_desc2nts(sys.stdout, desc2nts, prtfmt)
         self._prt_ver_n_key(sys.stdout, verbose)
         if summary_dct:
             print("\n{N} GO IDs in {S} sections".format(
                 N=desc2nts['num_items'], S=desc2nts['num_sections']))
예제 #4
0
 def write(self, fout_xlsx=None, fout_txt=None, verbose=False):
     """Command-line interface for go_draw script."""
     sortby = self._get_fncsortnt(self.objgrpd.grprobj.gosubdag.prt_attr['flds'])
     kws_sort = {'sortby' if verbose else 'section_sortby': sortby}
     sortobj = Sorter(self.objgrpd.grprobj, **kws_sort)
     # KWS: hdrgo_prt=True section_prt=None top_n=None use_sections=True
     # RET: {sortobj, sections, hdrgo_prt} or {sortobj flat hdrgo_prt}
     desc2nts = sortobj.get_desc2nts_fnc(
         hdrgo_prt=verbose,
         section_prt=True,
         top_n=None,
         use_sections=True)
     # print('FFFF', desc2nts['flds'])
     # Write user GO IDs in sections
     objgowr = WrXlsxSortedGos("init", sortobj, self.objgrpd.ver_list)
     if fout_xlsx is not None:
         kws_xlsx = {'shade_hdrgos':verbose}
         if not verbose:
             kws_xlsx['prt_flds'] = [f for f in desc2nts['flds'] if f not in self.excl_flds]
         objgowr.wr_xlsx_nts(fout_xlsx, desc2nts, **kws_xlsx)
         fout_desc = '{BASE}_desc.txt'.format(BASE=os.path.splitext(fout_xlsx)[0])
         self._wr_ver_n_key(fout_desc, verbose)
     if fout_txt is not None:
         self._wr_txt_nts(fout_txt, desc2nts, objgowr, verbose)
     if fout_xlsx is None and fout_txt is None:
         self._prt_ver_n_key(sys.stdout, verbose)
         prtfmt = self._get_prtfmt(objgowr, verbose)
         summary_dct = objgowr.prt_txt_desc2nts(sys.stdout, desc2nts, prtfmt)
         self._prt_ver_n_key(sys.stdout, verbose)
         if summary_dct:
             print("\n{N} GO IDs in {S} sections".format(
                 N=desc2nts['num_items'], S=desc2nts['num_sections']))