Source code for streamad.util.dataset
from os.path import dirname, join
import numpy as np
import pandas as pd
class DS:
def __init__(self) -> None:
self.data = None
self.date = None
self.label = None
self.features = None
self.names = None
def preprocess(self) -> None:
self.preprocess_data()
self.preprocess_timestamp()
self.preprocess_label()
self.preprocess_feature()
def preprocess_data(self) -> None:
self.data = pd.read_csv(self.path)
self.names = self.data.columns.values
def preprocess_timestamp(self) -> None:
if "timestamp" in self.names:
self.date = self.data["timestamp"].values
else:
self.date = self.data.index.values
def preprocess_label(self) -> None:
if "label" in self.names:
self.label = np.array(self.data["label"].values)
else:
self.label = None
def preprocess_feature(self) -> None:
self.features = np.setdiff1d(
self.names, np.array(["label", "timestamp"])
)
self.data = np.array(self.data[self.features])
[docs]class MultivariateDS(DS):
"""
Load multivariate dataset.
"""
def __init__(self, has_names=False) -> None:
super().__init__()
module_path = dirname(__file__)
self.path = join(module_path, "data", "multiDS.csv")
self.preprocess()
[docs]class UnivariateDS(DS):
"""
Load univariate dataset.
"""
def __init__(self) -> None:
super().__init__()
module_path = dirname(__file__)
self.path = join(module_path, "data", "uniDS.csv")
self.preprocess()
class CustomDS(DS):
"""
Load custom dataset.
"""
def __init__(self, f_path) -> None:
super().__init__()
self.path = f_path
self.preprocess()