def load(self): win = LoadWindow() res = win.exec_() if res == QtWidgets.QDialog.Accepted: tablefname = str(win.wTableFile.text()) mapfname = str(win.wMapFile.text()) if mapfname == '': mapfname = None gnpsfname = str(win.wGNPSFile.text()) if gnpsfname == '': gnpsfname = None expname = str(win.wNewName.text()) exptype = str(win.wType.currentText()) if exptype == 'Amplicon': try: expdat = ca.read_amplicon(tablefname, mapfname, normalize=10000, filter_reads=1000) except: logger.warn( 'Load for amplicon biom table %s map %s failed' % (tablefname, mapfname)) return elif exptype == 'Metabolomics (rows are samples)': try: expdat = ca.read_open_ms(tablefname, mapfname, gnps_file=gnpsfname, normalize=None, rows_are_samples=True) except: logger.warn('Load for openms table %s map %s failed' % (tablefname, mapfname)) return elif exptype == 'Metabolomics (rows are features)': try: expdat = ca.read_open_ms(tablefname, mapfname, gnps_file=gnpsfname, normalize=None, rows_are_samples=False) except: logger.warn('Load for openms table %s map %s failed' % (tablefname, mapfname)) return elif exptype == 'Amplicon': try: expdat = ca.read(tablefname, mapfname) except: logger.warn('Load for biom table %s map %s failed' % (tablefname, mapfname)) return expdat._studyname = expname self.addexp(expdat)
def test_read_open_ms(self): exp = ca.read_open_ms(self.openms_csv, normalize=None) # test we get the MZ and RT correct self.assertIn('MZ', exp.feature_metadata) self.assertIn('RT', exp.feature_metadata) self.assertAlmostEqual(exp.feature_metadata['MZ'].iloc[1], 118.0869) self.assertAlmostEqual(exp.feature_metadata['RT'].iloc[1], 23.9214) # test normalizing exp = ca.read_open_ms(self.openms_csv, normalize=10000) assert_array_almost_equal(exp.data.sum(axis=1), np.ones(exp.shape[0]) * 10000) # test load sparse exp = ca.read_open_ms(self.openms_csv, sparse=True, normalize=None) self.assertEqual(exp.sparse, True)
def test_read_open_ms_samples_rows(self): exp = ca.read_open_ms(self.openms_samples_rows_csv, normalize=None, rows_are_samples=True) # test we get the MZ and RT correct self.assertIn('MZ', exp.feature_metadata) self.assertIn('RT', exp.feature_metadata) self.assertAlmostEqual(exp.feature_metadata['MZ'].iloc[1], 118.0869) self.assertAlmostEqual(exp.feature_metadata['RT'].iloc[1], 23.9214)
def setUp(self): super().setUp() self.ms1 = ca.read_open_ms(self.openms_csv, None, gnps_file=self.ms1_gnps, normalize=None)