Module PdmModule.utils.structure
Expand source code
import pandas as pd
from pandas import DataFrame
from numpy import ndarray
class PredictionPoint():
'''
PredictionPoint - BatchPredictionPoint (utils.structure)
All predictions generated by TechniquesHandlers are in the form of PredictionPoints.
This is a simple class to represent a prediction, with the following fields:
score: the anomaly score (list in case of Batch).
threshold: threshold value (list in case of Batch).
alarm: if this prediction causes an alarm (list in case of Batch).
thresholdtype: metadata regarding the threshold technique used.
timestamp: timestamp of prediction (list in case of Batch).
source: The source that the prediction concerns.
description: A description (a valid prediction should have the name of the technique).
notes: Metadata (optional notes).
ensemble_details: In case this prediction is from an ensemble technique, metadata text.
'''
def __init__(self, score, threshold, alarm, thresholdtype, timestamp, source, description="",notes="",ensemble_details=None):
self.score = score
self.threshold = threshold
self.alarm = alarm
self.thresholdtype = thresholdtype
self.timestamp = timestamp
self.source = source
self.description = description
self.notes = notes
self.ensemble_details = ensemble_details
def toString(self):
kati=f"{self.source},{self.timestamp},{self.alarm}{self.notes},{self.ensemble_details}"
#if kati[-1] == ",":
# kati= kati[:-1]
return kati
class BatchPredictionPoint():
def __init__(self, score, threshold, alarm, timestamp, source,thresholdtype=None, description="",ensemble_details=None):
self.score = score
self.threshold = threshold
self.thresholdtype = thresholdtype
self.alarm = alarm
self.timestamp = timestamp
self.source = source
self.description = description
self.ensemble_details = ensemble_details
class Datapoint():
'''
Datapoint (utils.structure)
Represents a data sample.
current: an ndarray
reference: a DataFrame of vectors that represent the reference set related to the data sample.
source: a string indicating the source of the sample.
timestamp: the timestamp of the sample.
'''
def __init__(self,reference :DataFrame,current: ndarray,timestamp : pd.Timestamp,source):
self.reference = reference
self.current = current
self.source = source
self.timestamp = timestamp
class SimpleDatapoint():
def __init__(self,current: ndarray,timestamp : pd.Timestamp,source):
self.current = current
self.source = source
self.timestamp = timestamp
self.description = None
class Eventpoint():
'''
EventPoint (utils.structure)
All events are in the form of PredictionPoints.
This is a simple class to represent a prediction, with the following fields:
code: unique code of an event.
timestamp: timestamp of the prediction.
source: The source that the prediction concerns.
details: Text, description, or any details.
type: Metadata for the type of event (isolated, configuration, AD) used in context generation.
'''
def __init__(self,code,source,timestamp,details=None,type=None):
self.code = code
self.source = source
self.timestamp = timestamp
self.details = details
self.type = type
Classes
class BatchPredictionPoint (score, threshold, alarm, timestamp, source, thresholdtype=None, description='', ensemble_details=None)
-
Expand source code
class BatchPredictionPoint(): def __init__(self, score, threshold, alarm, timestamp, source,thresholdtype=None, description="",ensemble_details=None): self.score = score self.threshold = threshold self.thresholdtype = thresholdtype self.alarm = alarm self.timestamp = timestamp self.source = source self.description = description self.ensemble_details = ensemble_details
class Datapoint (reference: pandas.core.frame.DataFrame, current: numpy.ndarray, timestamp: pandas._libs.tslibs.timestamps.Timestamp, source)
-
Datapoint (utils.structure)
Represents a data sample.
current: an ndarray reference: a DataFrame of vectors that represent the reference set related to the data sample. source: a string indicating the source of the sample. timestamp: the timestamp of the sample.
Expand source code
class Datapoint(): ''' Datapoint (utils.structure) Represents a data sample. current: an ndarray reference: a DataFrame of vectors that represent the reference set related to the data sample. source: a string indicating the source of the sample. timestamp: the timestamp of the sample. ''' def __init__(self,reference :DataFrame,current: ndarray,timestamp : pd.Timestamp,source): self.reference = reference self.current = current self.source = source self.timestamp = timestamp
class Eventpoint (code, source, timestamp, details=None, type=None)
-
EventPoint (utils.structure)
All events are in the form of PredictionPoints.
This is a simple class to represent a prediction, with the following fields:
code: unique code of an event. timestamp: timestamp of the prediction. source: The source that the prediction concerns. details: Text, description, or any details. type: Metadata for the type of event (isolated, configuration, AD) used in context generation.
Expand source code
class Eventpoint(): ''' EventPoint (utils.structure) All events are in the form of PredictionPoints. This is a simple class to represent a prediction, with the following fields: code: unique code of an event. timestamp: timestamp of the prediction. source: The source that the prediction concerns. details: Text, description, or any details. type: Metadata for the type of event (isolated, configuration, AD) used in context generation. ''' def __init__(self,code,source,timestamp,details=None,type=None): self.code = code self.source = source self.timestamp = timestamp self.details = details self.type = type
class PredictionPoint (score, threshold, alarm, thresholdtype, timestamp, source, description='', notes='', ensemble_details=None)
-
PredictionPoint - BatchPredictionPoint (utils.structure)
All predictions generated by TechniquesHandlers are in the form of PredictionPoints.
This is a simple class to represent a prediction, with the following fields:
score: the anomaly score (list in case of Batch). threshold: threshold value (list in case of Batch). alarm: if this prediction causes an alarm (list in case of Batch). thresholdtype: metadata regarding the threshold technique used. timestamp: timestamp of prediction (list in case of Batch). source: The source that the prediction concerns. description: A description (a valid prediction should have the name of the technique). notes: Metadata (optional notes). ensemble_details: In case this prediction is from an ensemble technique, metadata text.
Expand source code
class PredictionPoint(): ''' PredictionPoint - BatchPredictionPoint (utils.structure) All predictions generated by TechniquesHandlers are in the form of PredictionPoints. This is a simple class to represent a prediction, with the following fields: score: the anomaly score (list in case of Batch). threshold: threshold value (list in case of Batch). alarm: if this prediction causes an alarm (list in case of Batch). thresholdtype: metadata regarding the threshold technique used. timestamp: timestamp of prediction (list in case of Batch). source: The source that the prediction concerns. description: A description (a valid prediction should have the name of the technique). notes: Metadata (optional notes). ensemble_details: In case this prediction is from an ensemble technique, metadata text. ''' def __init__(self, score, threshold, alarm, thresholdtype, timestamp, source, description="",notes="",ensemble_details=None): self.score = score self.threshold = threshold self.alarm = alarm self.thresholdtype = thresholdtype self.timestamp = timestamp self.source = source self.description = description self.notes = notes self.ensemble_details = ensemble_details def toString(self): kati=f"{self.source},{self.timestamp},{self.alarm}{self.notes},{self.ensemble_details}" #if kati[-1] == ",": # kati= kati[:-1] return kati
Methods
def toString(self)
-
Expand source code
def toString(self): kati=f"{self.source},{self.timestamp},{self.alarm}{self.notes},{self.ensemble_details}" #if kati[-1] == ",": # kati= kati[:-1] return kati
class SimpleDatapoint (current: numpy.ndarray, timestamp: pandas._libs.tslibs.timestamps.Timestamp, source)
-
Expand source code
class SimpleDatapoint(): def __init__(self,current: ndarray,timestamp : pd.Timestamp,source): self.current = current self.source = source self.timestamp = timestamp self.description = None