def test_ts_list_sorted(self): """ Test that the list of IDs is sorted. """ db = PhilDB(self.test_tsdb) db.add_measurand('P', 'PRECIPITATION', 'Precipitation') db.add_timeseries_instance('410730', 'D', 'Foo', measurand='P', source='DATA_SOURCE') db.add_timeseries('410731') db.add_timeseries_instance('410731', 'D', 'Foo', measurand='P', source='DATA_SOURCE') db.add_timeseries_instance('410731', 'D', 'Foo', measurand='Q', source='DATA_SOURCE') ts_list = db.ts_list() self.assertEqual(['123456', '410730', '410731'], ts_list)
def test_ts_list_measurand(self): db = PhilDB(self.test_tsdb) db.add_timeseries('410731') db.add_measurand('P', 'PRECIPITATION', 'Precipitation') db.add_timeseries_instance('410731', 'D', 'Foo', measurand = 'P', source = 'DATA_SOURCE') ts_list = db.ts_list(measurand = 'P') self.assertEqual(['410731'], ts_list)
def test_ts_list_source(self): db = PhilDB(self.test_tsdb) db.add_timeseries('410731') db.add_source('EXAMPLE_SOURCE', 'Example source, i.e. a dataset') db.add_timeseries_instance('410731', 'D', 'Foo', measurand = 'Q', source = 'EXAMPLE_SOURCE') ts_list = db.ts_list(source = 'EXAMPLE_SOURCE') self.assertEqual(['410731'], ts_list)
def test_ts_list_measurand_and_source(self): db = PhilDB(self.test_tsdb) db.add_timeseries('410731') db.add_source('EXAMPLE_SOURCE', 'Example source, i.e. a dataset') db.add_measurand('P', 'PRECIPITATION', 'Precipitation') db.add_timeseries_instance('410731', 'D', 'Foo', measurand = 'P', source = 'EXAMPLE_SOURCE') ts_list = db.ts_list(source = 'EXAMPLE_SOURCE', measurand = 'P') self.assertEqual(['410731'], ts_list)
def test_ts_list_unique_ids(self): """ Test that IDs don't appear multiple times due to different combinations. """ db = PhilDB(self.test_tsdb) db.add_measurand('P', 'PRECIPITATION', 'Precipitation') db.add_timeseries_instance('410730', 'D', 'Foo', measurand = 'P', source = 'DATA_SOURCE') ts_list = db.ts_list() self.assertEqual(['123456', '410730'], ts_list)
def test_ts_list_measurand(self): db = PhilDB(self.test_tsdb) db.add_timeseries('410731') db.add_measurand('P', 'PRECIPITATION', 'Precipitation') db.add_timeseries_instance('410731', 'D', 'Foo', measurand='P', source='DATA_SOURCE') ts_list = db.ts_list(measurand='P') self.assertEqual(['410731'], ts_list)
def test_ts_list_source(self): db = PhilDB(self.test_tsdb) db.add_timeseries('410731') db.add_source('EXAMPLE_SOURCE', 'Example source, i.e. a dataset') db.add_timeseries_instance('410731', 'D', 'Foo', measurand='Q', source='EXAMPLE_SOURCE') ts_list = db.ts_list(source='EXAMPLE_SOURCE') self.assertEqual(['410731'], ts_list)
def test_ts_list_measurand_and_source(self): db = PhilDB(self.test_tsdb) db.add_timeseries('410731') db.add_source('EXAMPLE_SOURCE', 'Example source, i.e. a dataset') db.add_measurand('P', 'PRECIPITATION', 'Precipitation') db.add_timeseries_instance('410731', 'D', 'Foo', measurand='P', source='EXAMPLE_SOURCE') ts_list = db.ts_list(source='EXAMPLE_SOURCE', measurand='P') self.assertEqual(['410731'], ts_list)
def test_ts_list_unique_ids(self): """ Test that IDs don't appear multiple times due to different combinations. """ db = PhilDB(self.test_tsdb) db.add_measurand('P', 'PRECIPITATION', 'Precipitation') db.add_timeseries_instance('410730', 'D', 'Foo', measurand='P', source='DATA_SOURCE') ts_list = db.ts_list() self.assertEqual(['123456', '410730'], ts_list)
def test_ts_list_sorted(self): """ Test that the list of IDs is sorted. """ db = PhilDB(self.test_tsdb) db.add_measurand('P', 'PRECIPITATION', 'Precipitation') db.add_timeseries_instance('410730', 'D', 'Foo', measurand = 'P', source = 'DATA_SOURCE') db.add_timeseries('410731') db.add_timeseries_instance('410731', 'D', 'Foo', measurand = 'P', source = 'DATA_SOURCE') db.add_timeseries_instance('410731', 'D', 'Foo', measurand = 'Q', source = 'DATA_SOURCE') ts_list = db.ts_list() self.assertEqual(['123456', '410730', '410731'], ts_list)
def test_ts_list(self): db = PhilDB(self.test_tsdb) ts_list = db.ts_list() self.assertEqual(['123456', '410730'], ts_list)
import time import pandas as pd import numpy as np from datetime import datetime from phildb.database import PhilDB from phildb_client import PhilDBClient pdb = PhilDB('hrs_phildb') pdb_client = PhilDBClient('http://localhost:8989') phildb_client_reads = [] for ts_id in pdb.ts_list(): phildb_client_start = time.time() pdb_client.read(ts_id, 'D') phildb_client_end = time.time() phildb_client_reads.append(phildb_client_end - phildb_client_start) np.savetxt('phildb_client_reads.txt', phildb_client_reads)
import sys import numpy as np from phildb.database import PhilDB db = PhilDB(sys.argv[1]) ac = np.array( [ (hrs_id, db.read(hrs_id, 'D', measurand = 'Q', source = 'BOM_HRS').autocorr()) for hrs_id in db.ts_list()], dtype = [('name','S8'),('val',float)] ) for station in ac[ac['val'] >= 0.95]: print station['name'], station['val']
import sys import numpy as np from phildb.database import PhilDB db = PhilDB(sys.argv[1]) ac = np.array( [(hrs_id, db.read(hrs_id, 'D', measurand='Q', source='BOM_HRS').autocorr()) for hrs_id in db.ts_list()], dtype=[('name', 'S8'), ('val', float)]) for station in ac[ac['val'] >= 0.95]: print station['name'], station['val']