def test_locate_sample_datasets(self): with self.assertRaises(OSError): FileFormat.locate("iris.tab", search_dirs=[os.path.dirname(__file__)]) iris = FileFormat.locate("iris.tab", search_dirs=[get_sample_datasets_dir()]) self.assertEqual(os.path.basename(iris), "iris.tab") # test extension adding iris = FileFormat.locate("iris", search_dirs=[get_sample_datasets_dir()]) self.assertEqual(os.path.basename(iris), "iris.tab")
def test_locate_sample_datasets(self): with self.assertRaises(OSError): FileFormat.locate("iris.tab", search_dirs=[os.path.dirname(__file__)]) iris = FileFormat.locate("iris.tab", search_dirs=[get_sample_datasets_dir()]) self.assertEqual(os.path.basename(iris), "iris.tab") # test extension adding iris = FileFormat.locate("iris", search_dirs=[get_sample_datasets_dir()]) self.assertEqual(os.path.basename(iris), "iris.tab")
def test_locate_wildcard_extension(self): tempdir = tempfile.mkdtemp() with self.assertRaises(OSError): FileFormat.locate("t.wild9", search_dirs=[tempdir]) fn = os.path.join(tempdir, "t.wild8") with open(fn, "wt") as f: f.write("\n") l = FileFormat.locate("t.wild8", search_dirs=[tempdir]) self.assertEqual(l, fn) # test extension adding l = FileFormat.locate("t", search_dirs=[tempdir]) self.assertEqual(l, fn) shutil.rmtree(tempdir)
def test_locate_wildcard_extension(self): tempdir = tempfile.mkdtemp() with self.assertRaises(OSError): FileFormat.locate("t.wild9", search_dirs=[tempdir]) fn = os.path.join(tempdir, "t.wild8") with open(fn, "wt") as f: f.write("\n") l = FileFormat.locate("t.wild8", search_dirs=[tempdir]) self.assertEqual(l, fn) # test extension adding l = FileFormat.locate("t", search_dirs=[tempdir]) self.assertEqual(l, fn) shutil.rmtree(tempdir)
def initialize_reader(reader, fn): """ Returns an initialized reader with the file that can be relative to Orange's default data set directories. """ absolute_filename = FileFormat.locate(fn, Orange.data.table.dataset_dirs) return reader(absolute_filename)
def setUp(self): self.widget = self.create_widget(OWFFT) self.ifg_single = Orange.data.Table("IFG_single.dpt") self.ifg_seq = Orange.data.Table("agilent/4_noimage_agg256.seq") fn = 'NeaReaderGSF_test/NeaReaderGSF_test O2A raw.gsf' absolute_filename = FileFormat.locate(fn, dataset_dirs) self.ifg_gsf = NeaReaderGSF(absolute_filename).read()
def main(argv=sys.argv): from orangecontrib.spectroscopy.io.neaspec import NeaReaderGSF from Orange.data.io import FileFormat from Orange.data import dataset_dirs fn = 'NeaReaderGSF_test/NeaReaderGSF_test O2A raw.gsf' absolute_filename = FileFormat.locate(fn, dataset_dirs) data = NeaReaderGSF(absolute_filename).read() app = QApplication(list(argv)) filename = "IFG_single.dpt" ow = OWFFT() ow.show() ow.raise_() dataset = Orange.data.Table(filename) dataset = data #ComplexFFT, this line can be commented ow.set_data(dataset) ow.handleNewSignals() app.exec_() ow.set_data(None) ow.handleNewSignals() return 0
def test_read(self): fn = 'NeaReaderGSF_test/NeaReaderGSF_test O2P raw.gsf' absolute_filename = FileFormat.locate(fn, dataset_dirs) data = NeaReaderGSF(absolute_filename).read() self.assertEqual(len(data), 2) self.assertEqual("run", data.domain.metas[2].name) self.assertEqual("O2A", data.metas[0][3]) np.testing.assert_almost_equal(data.X[0, 0], 0.734363853931427) self.assertEqual("O2P", data.metas[1][3]) np.testing.assert_almost_equal(data.X[1, 43], 0.17290098965168)
def test_open_v2(self): fn = "nea_test_v2.txt" absolute_filename = FileFormat.locate(fn, dataset_dirs) data = NeaReader(absolute_filename).read() self.assertEqual(len(data), 12) self.assertEqual("channel", data.domain.metas[2].name) np.testing.assert_almost_equal(getx(data), [15., 89.]) self.assertEqual("O0A", data.metas[0][2]) np.testing.assert_almost_equal(data.X[0, 0], 92.0) self.assertEqual("O0A", data.metas[6][2]) np.testing.assert_almost_equal(data.X[6, 0], 38.0)
def test_read(self): fn = 'NeaReaderGSF_test/NeaReaderGSF_test O2P raw.gsf' absolute_filename = FileFormat.locate(fn, dataset_dirs) data = NeaReaderGSF(absolute_filename).read() self.assertEqual(len(data), 2) self.assertEqual("run", data.domain.metas[2].name) self.assertEqual("O2A", data.metas[0][3]) np.testing.assert_almost_equal(data.X[0, 0], 0.734363853931427) self.assertEqual("O2P", data.metas[1][3]) np.testing.assert_almost_equal(data.X[1, 43], 0.17290098965168) n_ifg = int(data.attributes['Pixel Area (X, Y, Z)'][3]) self.assertEqual(n_ifg, 1024) self.assertEqual(n_ifg, len(data.domain.attributes)) check_attributes(data)
def load_from_file(): filename = self.last_path() if not filename: return None, "" if not os.path.exists(filename): filename = os.path.basename(filename) filename = FileFormat.locate(filename, "") self.information("Loading '{}' from the current directory." .format(filename)) reader = FileFormat.get_reader(filename) if isinstance(reader, ExcelReader): reader.select_sheet(self.xls_sheet) try: return load(lambda x: reader.read(), filename) except Exception as exc: self.warnings.setText(str(exc)) # Let us not remove from recent files: user may fix them raise
def load_from_file(): filename = self.last_path() if not filename: return None, "" if not os.path.exists(filename): filename = os.path.basename(filename) filename = FileFormat.locate(filename, "") self.information( "Loading '{}' from the current directory.".format( filename)) reader = FileFormat.get_reader(filename) if isinstance(reader, ExcelReader): reader.select_sheet(self.xls_sheet) try: return load(lambda x: reader.read(), filename) except Exception as exc: self.warnings.setText(str(exc)) # Let us not remove from recent files: user may fix them raise
def test_mosaic_ifg_read(self): # This reader will only be selected manually due to shared .dmt extension absolute_filename = FileFormat.locate("agilent/5_mosaic_agg1024.dmt", Orange.data.table.dataset_dirs) d = agilentMosaicIFGReader(absolute_filename).read() self.assertEqual(len(d), 32) self.assertEqual(len(d.domain.attributes), 311) # Pixel sizes are 5.5 * 32 = 176.0 (binning to reduce test data) self.assertAlmostEqual( d[1]["map_x"] - d[0]["map_x"], 176.0) self.assertAlmostEqual( d[4]["map_y"] - d[3]["map_y"], 176.0) # Last pixel should start at (4 - 1) * 176.0 = 528.0 self.assertAlmostEqual(d[-1]["map_x"], 528.0) # 1 x 2 mosiac, (8 - 1) * 176.0 = 1232.0 self.assertAlmostEqual(d[-1]["map_y"], 1232.0) self.assertAlmostEqual(d[21][0], 0.7116039) self.assertAlmostEqual(d[26][0], 0.48532167) # Metadata self.assertEqual(d.metas[0, 2], 1.57980039e+04) self.assertEqual(d.metas[0, 3], 4)
# multiple spectra d1 = Orange.data.Table("collagen.csv") d1.save(fn) d2 = Orange.data.Table(fn) np.testing.assert_equal(d1.X, d2.X) def test_comma_delim(self): with named_file("15,500\n30,650\n", suffix=".dpt") as fn: d = Orange.data.Table(fn) np.testing.assert_equal(d.X, [[500., 650.]]) try: no_visible_image = FileFormat.locate("opus/no_visible_images.0", Orange.data.table.dataset_dirs) except OSError: no_visible_image = False try: one_visible_image = FileFormat.locate("opus/one_visible_image.0", Orange.data.table.dataset_dirs) except OSError: one_visible_image = False @unittest.skipIf(opusFC is None, "opusFC module not installed") class TestOpusReader(unittest.TestCase): @unittest.skipIf(no_visible_image is False, "Missing opus/no_visible_images.0") def test_no_visible_image_read(self):