コード例 #1
0
    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)
コード例 #2
0
ファイル: test_database.py プロジェクト: cc272309126/phildb
    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)
コード例 #3
0
ファイル: test_database.py プロジェクト: cc272309126/phildb
    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)
コード例 #4
0
ファイル: test_database.py プロジェクト: cc272309126/phildb
    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)
コード例 #5
0
ファイル: test_database.py プロジェクト: cc272309126/phildb
    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)
コード例 #6
0
    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)
コード例 #7
0
    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)
コード例 #8
0
    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)
コード例 #9
0
    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)
コード例 #10
0
ファイル: test_database.py プロジェクト: cc272309126/phildb
    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)
コード例 #11
0
ファイル: test_database.py プロジェクト: cc272309126/phildb
 def test_ts_list(self):
     db = PhilDB(self.test_tsdb)
     ts_list = db.ts_list()
     self.assertEqual(['123456', '410730'], ts_list)
コード例 #12
0
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)
コード例 #13
0
ファイル: autocorr.py プロジェクト: cc272309126/phildb
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']
コード例 #14
0
ファイル: autocorr.py プロジェクト: cc272309126/phildb
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']
コード例 #15
0
 def test_ts_list(self):
     db = PhilDB(self.test_tsdb)
     ts_list = db.ts_list()
     self.assertEqual(['123456', '410730'], ts_list)