示例#1
0
 def test_reorder_columns(self):
     """Reorder columns in a TabFile
     """
     tabfile = TabFile('test',self.fp,first_line_is_header=True)
     # Check number of columns and header items
     self.assertEqual(tabfile.nColumns(),4)
     self.assertEqual(tabfile.header(),['chr','start','end','data'])
     # Reorder
     new_columns = ['chr','data','start','end']
     tabfile = tabfile.reorderColumns(new_columns)
     self.assertEqual(tabfile.nColumns(),4)
     self.assertEqual(tabfile.header(),new_columns)
     self.assertEqual(str(tabfile[0]),"chr1\t4.6\t1\t234")
     self.assertEqual(str(tabfile[1]),"chr1\t5.7\t567\t890")
     self.assertEqual(str(tabfile[2]),"chr2\t6.8\t1234\t5678")
示例#2
0
 def test_reorder_columns(self):
     """Reorder columns in a TabFile
     """
     tabfile = TabFile('test', self.fp, first_line_is_header=True)
     # Check number of columns and header items
     self.assertEqual(tabfile.nColumns(), 4)
     self.assertEqual(tabfile.header(), ['chr', 'start', 'end', 'data'])
     # Reorder
     new_columns = ['chr', 'data', 'start', 'end']
     tabfile = tabfile.reorderColumns(new_columns)
     self.assertEqual(tabfile.nColumns(), 4)
     self.assertEqual(tabfile.header(), new_columns)
     self.assertEqual(str(tabfile[0]), "chr1\t4.6\t1\t234")
     self.assertEqual(str(tabfile[1]), "chr1\t5.7\t567\t890")
     self.assertEqual(str(tabfile[2]), "chr2\t6.8\t1234\t5678")
示例#3
0
 def test_reorder_columns_empty_cells(self):
     """Reorder columns where some lines have empty cells at the start
     """
     tabfile = TabFile('test',self.fp,first_line_is_header=True)
     # Check number of columns and header items
     self.assertEqual(tabfile.nColumns(),4)
     self.assertEqual(tabfile.header(),['chr','start','end','data'])
     # Reset some cells to empty
     tabfile[0]['chr'] = ''
     tabfile[2]['chr'] = ''
     # Reorder
     new_columns = ['chr','data','start','end']
     tabfile = tabfile.reorderColumns(new_columns)
     self.assertEqual(tabfile.nColumns(),4)
     self.assertEqual(tabfile.header(),new_columns)
     self.assertEqual(str(tabfile[0]),"\t4.6\t1\t234")
     self.assertEqual(str(tabfile[1]),"chr1\t5.7\t567\t890")
     self.assertEqual(str(tabfile[2]),"\t6.8\t1234\t5678")
示例#4
0
 def test_reorder_columns_empty_cells(self):
     """Reorder columns where some lines have empty cells at the start
     """
     tabfile = TabFile('test', self.fp, first_line_is_header=True)
     # Check number of columns and header items
     self.assertEqual(tabfile.nColumns(), 4)
     self.assertEqual(tabfile.header(), ['chr', 'start', 'end', 'data'])
     # Reset some cells to empty
     tabfile[0]['chr'] = ''
     tabfile[2]['chr'] = ''
     # Reorder
     new_columns = ['chr', 'data', 'start', 'end']
     tabfile = tabfile.reorderColumns(new_columns)
     self.assertEqual(tabfile.nColumns(), 4)
     self.assertEqual(tabfile.header(), new_columns)
     self.assertEqual(str(tabfile[0]), "\t4.6\t1\t234")
     self.assertEqual(str(tabfile[1]), "chr1\t5.7\t567\t890")
     self.assertEqual(str(tabfile[2]), "\t6.8\t1234\t5678")