azure.ai.anomalydetector.models package

class azure.ai.anomalydetector.models.APIVersion(value)[source]

APIVersion.

V1_1 = 'v1.1'
class azure.ai.anomalydetector.models.AlignMode(value)[source]

AlignMode.

INNER = 'Inner'
OUTER = 'Outer'
class azure.ai.anomalydetector.models.AlignPolicy(*args: Any, **kwargs: Any)[source]

An optional field, indicating the manner to align multiple variables.

Variables
  • align_mode (str or AlignMode) – An optional field, indicating how to align different variables to the same time-range. Either Inner or Outer. Known values are: “Inner” and “Outer”.

  • fill_n_a_method (str or FillNAMethod) – An optional field, indicating how missing values will be filled. One of Previous, Subsequent, Linear, Zero, Fixed. Known values are: “Previous”, “Subsequent”, “Linear”, “Zero”, and “Fixed”.

  • padding_value (float) – An optional field. Required when fillNAMethod is Fixed.

clear()None.  Remove all items from D.
copy()
get(k[, d])D[k] if k in D, else d.  d defaults to None.
items()a set-like object providing a view on D’s items
keys()a set-like object providing a view on D’s keys
pop(k[, d])v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()(k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d])D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F)None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()an object providing a view on D’s values
align_mode: Optional[Union[str, _models.AlignMode]]

An optional field, indicating how to align different variables to the same time-range. Either Inner or Outer. Known values are: “Inner” and “Outer”.

fill_n_a_method: Optional[Union[str, _models.FillNAMethod]]

An optional field, indicating how missing values will be filled. One of Previous, Subsequent, Linear, Zero, Fixed. Known values are: “Previous”, “Subsequent”, “Linear”, “Zero”, and “Fixed”.

padding_value: Optional[float]

An optional field. Required when fillNAMethod is Fixed.

class azure.ai.anomalydetector.models.AnomalyDetectionModel(*args: Any, **kwargs: Any)[source]

Response of getting a model.

Readonly variables are only populated by the server, and will be ignored when sending a request.

All required parameters must be populated in order to send to Azure.

Variables
clear()None.  Remove all items from D.
copy()
get(k[, d])D[k] if k in D, else d.  d defaults to None.
items()a set-like object providing a view on D’s items
keys()a set-like object providing a view on D’s keys
pop(k[, d])v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()(k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d])D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F)None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()an object providing a view on D’s values
created_time: datetime.datetime

Date and time (UTC) when the model was created. Required.

last_updated_time: datetime.datetime

Date and time (UTC) when the model was last updated. Required.

model_id: str

Model identifier. Required.

model_info: Optional[_models.ModelInfo]

Training result of a model including its status, errors and diagnostics information.

class azure.ai.anomalydetector.models.AnomalyDetectorError(*args: Any, **kwargs: Any)[source]

Error information returned by the API.

Variables
  • x_ms_error_code (str) – Error code.

  • code (str or AnomalyDetectorErrorCodes) – The error code. Known values are: “InvalidCustomInterval”, “BadArgument”, “InvalidGranularity”, “InvalidPeriod”, “InvalidModelArgument”, “InvalidSeries”, “InvalidJsonFormat”, “RequiredGranularity”, “RequiredSeries”, “InvalidImputeMode”, and “InvalidImputeFixedValue”.

  • message (str) – A message explaining the error reported by the service.

clear()None.  Remove all items from D.
copy()
get(k[, d])D[k] if k in D, else d.  d defaults to None.
items()a set-like object providing a view on D’s items
keys()a set-like object providing a view on D’s keys
pop(k[, d])v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()(k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d])D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F)None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()an object providing a view on D’s values
code: Optional[Union[str, _models.AnomalyDetectorErrorCodes]]

“InvalidCustomInterval”, “BadArgument”, “InvalidGranularity”, “InvalidPeriod”, “InvalidModelArgument”, “InvalidSeries”, “InvalidJsonFormat”, “RequiredGranularity”, “RequiredSeries”, “InvalidImputeMode”, and “InvalidImputeFixedValue”.

Type

The error code. Known values are

message: Optional[str]

A message explaining the error reported by the service.

x_ms_error_code: Optional[str]

Error code.

class azure.ai.anomalydetector.models.AnomalyDetectorErrorCodes(value)[source]

AnomalyDetectorErrorCodes.

BAD_ARGUMENT = 'BadArgument'
INVALID_CUSTOM_INTERVAL = 'InvalidCustomInterval'
INVALID_GRANULARITY = 'InvalidGranularity'
INVALID_IMPUTE_FIXED_VALUE = 'InvalidImputeFixedValue'
INVALID_IMPUTE_MODE = 'InvalidImputeMode'
INVALID_JSON_FORMAT = 'InvalidJsonFormat'
INVALID_MODEL_ARGUMENT = 'InvalidModelArgument'
INVALID_PERIOD = 'InvalidPeriod'
INVALID_SERIES = 'InvalidSeries'
REQUIRED_GRANULARITY = 'RequiredGranularity'
REQUIRED_SERIES = 'RequiredSeries'
class azure.ai.anomalydetector.models.AnomalyInterpretation(*args: Any, **kwargs: Any)[source]

Interpretation of the anomalous timestamp.

Variables
clear()None.  Remove all items from D.
copy()
get(k[, d])D[k] if k in D, else d.  d defaults to None.
items()a set-like object providing a view on D’s items
keys()a set-like object providing a view on D’s keys
pop(k[, d])v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()(k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d])D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F)None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()an object providing a view on D’s values
contribution_score: Optional[float]

This score shows the percentage contributing to the anomalous timestamp. A number between 0 and 1.

correlation_changes: Optional[_models.CorrelationChanges]

Correlation changes among the anomalous variables.

variable: Optional[str]

Variable.

class azure.ai.anomalydetector.models.AnomalyState(*args: Any, **kwargs: Any)[source]

Anomaly status and information.

All required parameters must be populated in order to send to Azure.

Variables
clear()None.  Remove all items from D.
copy()
get(k[, d])D[k] if k in D, else d.  d defaults to None.
items()a set-like object providing a view on D’s items
keys()a set-like object providing a view on D’s keys
pop(k[, d])v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()(k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d])D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F)None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()an object providing a view on D’s values
errors: Optional[List[_models.ErrorResponse]]

Error message for the current timestamp.

timestamp: datetime.datetime

The timestamp for this anomaly. Required.

value: Optional[_models.AnomalyValue]

The detailed value of this anomalous timestamp.

class azure.ai.anomalydetector.models.AnomalyValue(*args: Any, **kwargs: Any)[source]

Detailed information of the anomalous timestamp.

All required parameters must be populated in order to send to Azure.

Variables
  • is_anomaly (bool) – True if an anomaly is detected at the current timestamp. Required.

  • severity (float) – Indicates the significance of the anomaly. The higher the severity, the more significant the anomaly is. Required.

  • score (float) – Raw anomaly score of severity, will help indicate the degree of abnormality as well. Required.

  • interpretation (list[AnomalyInterpretation]) – Interpretation of this anomalous timestamp.

clear()None.  Remove all items from D.
copy()
get(k[, d])D[k] if k in D, else d.  d defaults to None.
items()a set-like object providing a view on D’s items
keys()a set-like object providing a view on D’s keys
pop(k[, d])v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()(k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d])D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F)None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()an object providing a view on D’s values
interpretation: Optional[List[_models.AnomalyInterpretation]]

Interpretation of this anomalous timestamp.

is_anomaly: bool

True if an anomaly is detected at the current timestamp. Required.

score: float

Raw anomaly score of severity, will help indicate the degree of abnormality as well. Required.

severity: float

Indicates the significance of the anomaly. The higher the severity, the more significant the anomaly is. Required.

class azure.ai.anomalydetector.models.CorrelationChanges(*args: Any, **kwargs: Any)[source]

Correlation changes among the anomalous variables.

Variables

changed_variables (list[str]) – The correlated variables that have correlation changes under an anomaly.

clear()None.  Remove all items from D.
copy()
get(k[, d])D[k] if k in D, else d.  d defaults to None.
items()a set-like object providing a view on D’s items
keys()a set-like object providing a view on D’s keys
pop(k[, d])v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()(k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d])D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F)None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()an object providing a view on D’s values
changed_variables: Optional[List[str]]

The correlated variables that have correlation changes under an anomaly.

class azure.ai.anomalydetector.models.DataSchema(value)[source]

DataSchema.

MULTI_TABLE = 'MultiTable'

MultiTable means that your input data are separated in multiple CSV files, in each file containing one ‘timestamp’ column and one ‘variable’ column, and the CSV file name should indicate the name of the variable. The default DataSchema is OneTable.

ONE_TABLE = 'OneTable'

OneTable means that your input data are all in one CSV file, which contains one ‘timestamp’ column and several variable columns. The default DataSchema is OneTable.

class azure.ai.anomalydetector.models.DiagnosticsInfo(*args: Any, **kwargs: Any)[source]

Diagnostics information to help inspect the states of model or variable.

Variables
clear()None.  Remove all items from D.
copy()
get(k[, d])D[k] if k in D, else d.  d defaults to None.
items()a set-like object providing a view on D’s items
keys()a set-like object providing a view on D’s keys
pop(k[, d])v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()(k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d])D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F)None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()an object providing a view on D’s values
model_state: Optional[_models.ModelState]

Model status.

variable_states: Optional[List[_models.VariableState]]

Variable Status.

class azure.ai.anomalydetector.models.ErrorResponse(*args: Any, **kwargs: Any)[source]

ErrorResponse contains code and message that shows the error information.

All required parameters must be populated in order to send to Azure.

Variables
  • code (str) – The error code. Required.

  • message (str) – The message explaining the error reported by the service. Required.

clear()None.  Remove all items from D.
copy()
get(k[, d])D[k] if k in D, else d.  d defaults to None.
items()a set-like object providing a view on D’s items
keys()a set-like object providing a view on D’s keys
pop(k[, d])v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()(k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d])D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F)None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()an object providing a view on D’s values
code: str

The error code. Required.

message: str

The message explaining the error reported by the service. Required.

class azure.ai.anomalydetector.models.FillNAMethod(value)[source]

FillNAMethod.

FIXED = 'Fixed'
LINEAR = 'Linear'
PREVIOUS = 'Previous'
SUBSEQUENT = 'Subsequent'
ZERO = 'Zero'
class azure.ai.anomalydetector.models.ImputeMode(value)[source]

ImputeMode.

AUTO = 'auto'
FIXED = 'fixed'
LINEAR = 'linear'
NOT_FILL = 'notFill'
PREVIOUS = 'previous'
ZERO = 'zero'
class azure.ai.anomalydetector.models.ModelInfo(*args: Any, **kwargs: Any)[source]

Training result of a model including its status, errors and diagnostics information.

Readonly variables are only populated by the server, and will be ignored when sending a request.

All required parameters must be populated in order to send to Azure.

Variables
  • data_source (str) – Source link to the input data to indicate an accessible Azure storage Uri, either pointed to an Azure blob storage folder, or pointed to a CSV file in Azure blob storage based on you data schema selection. Required.

  • data_schema (str or DataSchema) – Data schema of input data source: OneTable or MultiTable. The default DataSchema is OneTable. Known values are: “OneTable” and “MultiTable”.

  • start_time (datetime) – A required field, indicating the start time of training data, which should be date-time of ISO 8601 format. Required.

  • end_time (datetime) – A required field, indicating the end time of training data, which should be date-time of ISO 8601 format. Required.

  • display_name (str) – An optional field. The display name of the model whose maximum length is 24 characters.

  • sliding_window (int) – An optional field, indicating how many previous timestamps will be used to detect whether the timestamp is anomaly or not.

  • align_policy (AlignPolicy) – An optional field, indicating the manner to align multiple variables.

  • status (str or ModelStatus) – Model status. One of CREATED, RUNNING, READY, and FAILED. Known values are: “CREATED”, “RUNNING”, “READY”, and “FAILED”.

  • errors (list[ErrorResponse]) – Error messages when failed to create a model.

  • diagnostics_info (DiagnosticsInfo) – Diagnostics information to help inspect the states of model or variable.

clear()None.  Remove all items from D.
copy()
get(k[, d])D[k] if k in D, else d.  d defaults to None.
items()a set-like object providing a view on D’s items
keys()a set-like object providing a view on D’s keys
pop(k[, d])v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()(k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d])D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F)None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()an object providing a view on D’s values
align_policy: Optional[_models.AlignPolicy]

An optional field, indicating the manner to align multiple variables.

data_schema: Optional[Union[str, _models.DataSchema]]

OneTable or MultiTable. The default DataSchema is OneTable. Known values are: “OneTable” and “MultiTable”.

Type

Data schema of input data source

data_source: str

Source link to the input data to indicate an accessible Azure storage Uri, either pointed to an Azure blob storage folder, or pointed to a CSV file in Azure blob storage based on you data schema selection. Required.

diagnostics_info: Optional[_models.DiagnosticsInfo]

Diagnostics information to help inspect the states of model or variable.

display_name: Optional[str]

An optional field. The display name of the model whose maximum length is 24 characters.

end_time: datetime.datetime

A required field, indicating the end time of training data, which should be date-time of ISO 8601 format. Required.

errors: Optional[List[_models.ErrorResponse]]

Error messages when failed to create a model.

sliding_window: Optional[int]

An optional field, indicating how many previous timestamps will be used to detect whether the timestamp is anomaly or not.

start_time: datetime.datetime

A required field, indicating the start time of training data, which should be date-time of ISO 8601 format. Required.

status: Optional[Union[str, _models.ModelStatus]]

“CREATED”, “RUNNING”, “READY”, and “FAILED”.

Type

Model status. One of CREATED, RUNNING, READY, and FAILED. Known values are

class azure.ai.anomalydetector.models.ModelState(*args: Any, **kwargs: Any)[source]

Model status.

Variables
clear()None.  Remove all items from D.
copy()
get(k[, d])D[k] if k in D, else d.  d defaults to None.
items()a set-like object providing a view on D’s items
keys()a set-like object providing a view on D’s keys
pop(k[, d])v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()(k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d])D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F)None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()an object providing a view on D’s values
epoch_ids: Optional[List[int]]

This indicates the number of passes of the entire training dataset the algorithm has completed.

latencies_in_seconds: Optional[List[float]]

Latency for each epoch.

train_losses: Optional[List[float]]

List of metrics used to assess how the model fits the training data for each epoch.

validation_losses: Optional[List[float]]

List of metrics used to assess how the model fits the validation set for each epoch.

class azure.ai.anomalydetector.models.ModelStatus(value)[source]

ModelStatus.

CREATED = 'CREATED'
FAILED = 'FAILED'
READY = 'READY'
RUNNING = 'RUNNING'
class azure.ai.anomalydetector.models.MultivariateBatchDetectionOptions(*args: Any, **kwargs: Any)[source]

Detection request for batch inference. This is an asynchronous inference which will need another API to get detection results.

All required parameters must be populated in order to send to Azure.

Variables
  • data_source (str) – Source link to the input data to indicate an accessible Azure storage Uri, either pointed to an Azure blob storage folder, or pointed to a CSV file in Azure blob storage based on you data schema selection. The data schema should be exactly the same with those used in the training phase. Required.

  • top_contributor_count (int) – An optional field, which is used to specify the number of top contributed variables for one anomalous timestamp in the response. The default number is 10. Required.

  • start_time (datetime) – A required field, indicating the start time of data for detection, which should be date-time of ISO 8601 format. Required.

  • end_time (datetime) – A required field, indicating the end time of data for detection, which should be date-time of ISO 8601 format. Required.

clear()None.  Remove all items from D.
copy()
get(k[, d])D[k] if k in D, else d.  d defaults to None.
items()a set-like object providing a view on D’s items
keys()a set-like object providing a view on D’s keys
pop(k[, d])v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()(k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d])D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F)None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()an object providing a view on D’s values
data_source: str

Source link to the input data to indicate an accessible Azure storage Uri, either pointed to an Azure blob storage folder, or pointed to a CSV file in Azure blob storage based on you data schema selection. The data schema should be exactly the same with those used in the training phase. Required.

end_time: datetime.datetime

A required field, indicating the end time of data for detection, which should be date-time of ISO 8601 format. Required.

start_time: datetime.datetime

A required field, indicating the start time of data for detection, which should be date-time of ISO 8601 format. Required.

top_contributor_count: int

An optional field, which is used to specify the number of top contributed variables for one anomalous timestamp in the response. The default number is 10. Required.

class azure.ai.anomalydetector.models.MultivariateBatchDetectionResultSummary(*args: Any, **kwargs: Any)[source]

Multivariate anomaly detection status.

All required parameters must be populated in order to send to Azure.

Variables
clear()None.  Remove all items from D.
copy()
get(k[, d])D[k] if k in D, else d.  d defaults to None.
items()a set-like object providing a view on D’s items
keys()a set-like object providing a view on D’s keys
pop(k[, d])v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()(k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d])D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F)None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()an object providing a view on D’s values
errors: Optional[List[_models.ErrorResponse]]

Error message when detection is failed.

setup_info: _models.MultivariateBatchDetectionOptions

Detection request for batch inference. This is an asynchronous inference which will need another API to get detection results. Required.

status: Union[str, _models.MultivariateBatchDetectionStatus]

“CREATED”, “RUNNING”, “READY”, and “FAILED”.

Type

Status of detection results. One of CREATED, RUNNING, READY, and FAILED. Required. Known values are

variable_states: Optional[List[_models.VariableState]]

Variable Status.

class azure.ai.anomalydetector.models.MultivariateBatchDetectionStatus(value)[source]

MultivariateBatchDetectionStatus.

CREATED = 'CREATED'
FAILED = 'FAILED'
READY = 'READY'
RUNNING = 'RUNNING'
class azure.ai.anomalydetector.models.MultivariateDetectionResult(*args: Any, **kwargs: Any)[source]

Detection results for the given resultId.

Readonly variables are only populated by the server, and will be ignored when sending a request.

All required parameters must be populated in order to send to Azure.

Variables
clear()None.  Remove all items from D.
copy()
get(k[, d])D[k] if k in D, else d.  d defaults to None.
items()a set-like object providing a view on D’s items
keys()a set-like object providing a view on D’s keys
pop(k[, d])v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()(k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d])D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F)None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()an object providing a view on D’s values
result_id: str

Result identifier, which is used to fetch the results of an inference call. Required.

results: List[_models.AnomalyState]

Detection result for each timestamp. Required.

summary: _models.MultivariateBatchDetectionResultSummary

Multivariate anomaly detection status. Required.

class azure.ai.anomalydetector.models.MultivariateLastDetectionOptions(*args: Any, **kwargs: Any)[source]

Request of last detection.

All required parameters must be populated in order to send to Azure.

Variables
  • variables (list[VariableValues]) – This contains the inference data, including the name, timestamps(ISO 8601) and values of variables. Required.

  • top_contributor_count (int) – An optional field, which is used to specify the number of top contributed variables for one anomalous timestamp in the response. The default number is 10. Required.

clear()None.  Remove all items from D.
copy()
get(k[, d])D[k] if k in D, else d.  d defaults to None.
items()a set-like object providing a view on D’s items
keys()a set-like object providing a view on D’s keys
pop(k[, d])v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()(k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d])D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F)None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()an object providing a view on D’s values
top_contributor_count: int

An optional field, which is used to specify the number of top contributed variables for one anomalous timestamp in the response. The default number is 10. Required.

variables: List[_models.VariableValues]

This contains the inference data, including the name, timestamps(ISO 8601) and values of variables. Required.

class azure.ai.anomalydetector.models.MultivariateLastDetectionResult(*args: Any, **kwargs: Any)[source]

Results of last detection.

Variables
clear()None.  Remove all items from D.
copy()
get(k[, d])D[k] if k in D, else d.  d defaults to None.
items()a set-like object providing a view on D’s items
keys()a set-like object providing a view on D’s keys
pop(k[, d])v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()(k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d])D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F)None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()an object providing a view on D’s values
results: Optional[List[_models.AnomalyState]]

Anomaly status and information.

variable_states: Optional[List[_models.VariableState]]

Variable Status.

class azure.ai.anomalydetector.models.ResponseError(*args: Any, **kwargs: Any)[source]

Error response.

All required parameters must be populated in order to send to Azure.

Variables
clear()None.  Remove all items from D.
copy()
get(k[, d])D[k] if k in D, else d.  d defaults to None.
items()a set-like object providing a view on D’s items
keys()a set-like object providing a view on D’s keys
pop(k[, d])v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()(k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d])D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F)None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()an object providing a view on D’s values
code: str

The error code. Required.

message: str

The message explaining the error reported by the service. Required.

x_ms_error_code: Optional[str]

Error code.

class azure.ai.anomalydetector.models.TimeGranularity(value)[source]

TimeGranularity.

DAILY = 'daily'
HOURLY = 'hourly'
MICROSECOND = 'microsecond'
MONTHLY = 'monthly'
NONE = 'none'
PER_MINUTE = 'minutely'
PER_SECOND = 'secondly'
WEEKLY = 'weekly'
YEARLY = 'yearly'
class azure.ai.anomalydetector.models.TimeSeriesPoint(*args: Any, **kwargs: Any)[source]

The definition of input timeseries points.

All required parameters must be populated in order to send to Azure.

Variables
  • timestamp (datetime) – Optional argument, timestamp of a data point (ISO8601 format).

  • value (float) – The measurement of that point, should be float. Required.

clear()None.  Remove all items from D.
copy()
get(k[, d])D[k] if k in D, else d.  d defaults to None.
items()a set-like object providing a view on D’s items
keys()a set-like object providing a view on D’s keys
pop(k[, d])v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()(k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d])D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F)None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()an object providing a view on D’s values
timestamp: Optional[datetime.datetime]

Optional argument, timestamp of a data point (ISO8601 format).

value: float

The measurement of that point, should be float. Required.

class azure.ai.anomalydetector.models.UnivariateChangePointDetectionOptions(*args: Any, **kwargs: Any)[source]

The request of change point detection.

All required parameters must be populated in order to send to Azure.

Variables
  • series (list[TimeSeriesPoint]) – Time series data points. Points should be sorted by timestamp in ascending order to match the change point detection result. Required.

  • granularity (str or TimeGranularity) – Can only be one of yearly, monthly, weekly, daily, hourly, minutely or secondly. Granularity is used for verify whether input series is valid. Required. Known values are: “yearly”, “monthly”, “weekly”, “daily”, “hourly”, “minutely”, “secondly”, “microsecond”, and “none”.

  • custom_interval (int) – Custom Interval is used to set non-standard time interval, for example, if the series is 5 minutes, request can be set as {“granularity”:”minutely”, “customInterval”:5}.

  • period (int) – Optional argument, periodic value of a time series. If the value is null or does not present, the API will determine the period automatically.

  • stable_trend_window (int) – Optional argument, advanced model parameter, a default stableTrendWindow will be used in detection.

  • threshold (float) – Optional argument, advanced model parameter, between 0.0-1.0, the lower the value is, the larger the trend error will be which means less change point will be accepted.

clear()None.  Remove all items from D.
copy()
get(k[, d])D[k] if k in D, else d.  d defaults to None.
items()a set-like object providing a view on D’s items
keys()a set-like object providing a view on D’s keys
pop(k[, d])v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()(k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d])D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F)None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()an object providing a view on D’s values
custom_interval: Optional[int]

Custom Interval is used to set non-standard time interval, for example, if the series is 5 minutes, request can be set as {“granularity”:”minutely”, “customInterval”:5}.

granularity: Union[str, _models.TimeGranularity]

Can only be one of yearly, monthly, weekly, daily, hourly, minutely or secondly. Granularity is used for verify whether input series is valid. Required. Known values are: “yearly”, “monthly”, “weekly”, “daily”, “hourly”, “minutely”, “secondly”, “microsecond”, and “none”.

period: Optional[int]

Optional argument, periodic value of a time series. If the value is null or does not present, the API will determine the period automatically.

series: List[_models.TimeSeriesPoint]

Time series data points. Points should be sorted by timestamp in ascending order to match the change point detection result. Required.

stable_trend_window: Optional[int]

Optional argument, advanced model parameter, a default stableTrendWindow will be used in detection.

threshold: Optional[float]

Optional argument, advanced model parameter, between 0.0-1.0, the lower the value is, the larger the trend error will be which means less change point will be accepted.

class azure.ai.anomalydetector.models.UnivariateChangePointDetectionResult(*args: Any, **kwargs: Any)[source]

The response of change point detection.

Readonly variables are only populated by the server, and will be ignored when sending a request.

Variables
  • period (int) – Frequency extracted from the series, zero means no recurrent pattern has been found.

  • is_change_point (list[bool]) – isChangePoint contains change point properties for each input point. True means an anomaly either negative or positive has been detected. The index of the array is consistent with the input series.

  • confidence_scores (list[float]) – the change point confidence of each point.

clear()None.  Remove all items from D.
copy()
get(k[, d])D[k] if k in D, else d.  d defaults to None.
items()a set-like object providing a view on D’s items
keys()a set-like object providing a view on D’s keys
pop(k[, d])v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()(k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d])D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F)None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()an object providing a view on D’s values
confidence_scores: Optional[List[float]]

the change point confidence of each point.

is_change_point: Optional[List[bool]]

isChangePoint contains change point properties for each input point. True means an anomaly either negative or positive has been detected. The index of the array is consistent with the input series.

period: Optional[int]

Frequency extracted from the series, zero means no recurrent pattern has been found.

class azure.ai.anomalydetector.models.UnivariateDetectionOptions(*args: Any, **kwargs: Any)[source]

The request of entire or last anomaly detection.

All required parameters must be populated in order to send to Azure.

Variables
  • series (list[TimeSeriesPoint]) – Time series data points. Points should be sorted by timestamp in ascending order to match the anomaly detection result. If the data is not sorted correctly or there is duplicated timestamp, the API will not work. In such case, an error message will be returned. Required.

  • granularity (str or TimeGranularity) – Optional argument, can be one of yearly, monthly, weekly, daily, hourly, minutely, secondly, microsecond or none. If granularity is not present, it will be none by default. If granularity is none, the timestamp property in time series point can be absent. Known values are: “yearly”, “monthly”, “weekly”, “daily”, “hourly”, “minutely”, “secondly”, “microsecond”, and “none”.

  • custom_interval (int) – Custom Interval is used to set non-standard time interval, for example, if the series is 5 minutes, request can be set as {“granularity”:”minutely”, “customInterval”:5}.

  • period (int) – Optional argument, periodic value of a time series. If the value is null or does not present, the API will determine the period automatically.

  • max_anomaly_ratio (float) – Optional argument, advanced model parameter, max anomaly ratio in a time series.

  • sensitivity (int) – Optional argument, advanced model parameter, between 0-99, the lower the value is, the larger the margin value will be which means less anomalies will be accepted.

  • impute_mode (str or ImputeMode) – Used to specify how to deal with missing values in the input series, it’s used when granularity is not “none”. Known values are: “auto”, “previous”, “linear”, “fixed”, “zero”, and “notFill”.

  • impute_fixed_value (float) – Used to specify the value to fill, it’s used when granularity is not “none” and imputeMode is “fixed”.

clear()None.  Remove all items from D.
copy()
get(k[, d])D[k] if k in D, else d.  d defaults to None.
items()a set-like object providing a view on D’s items
keys()a set-like object providing a view on D’s keys
pop(k[, d])v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()(k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d])D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F)None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()an object providing a view on D’s values
custom_interval: Optional[int]

Custom Interval is used to set non-standard time interval, for example, if the series is 5 minutes, request can be set as {“granularity”:”minutely”, “customInterval”:5}.

granularity: Optional[Union[str, _models.TimeGranularity]]

Optional argument, can be one of yearly, monthly, weekly, daily, hourly, minutely, secondly, microsecond or none. If granularity is not present, it will be none by default. If granularity is none, the timestamp property in time series point can be absent. Known values are: “yearly”, “monthly”, “weekly”, “daily”, “hourly”, “minutely”, “secondly”, “microsecond”, and “none”.

impute_fixed_value: Optional[float]

Used to specify the value to fill, it’s used when granularity is not “none” and imputeMode is “fixed”.

impute_mode: Optional[Union[str, _models.ImputeMode]]

Used to specify how to deal with missing values in the input series, it’s used when granularity is not “none”. Known values are: “auto”, “previous”, “linear”, “fixed”, “zero”, and “notFill”.

max_anomaly_ratio: Optional[float]

Optional argument, advanced model parameter, max anomaly ratio in a time series.

period: Optional[int]

Optional argument, periodic value of a time series. If the value is null or does not present, the API will determine the period automatically.

sensitivity: Optional[int]

Optional argument, advanced model parameter, between 0-99, the lower the value is, the larger the margin value will be which means less anomalies will be accepted.

series: List[_models.TimeSeriesPoint]

Time series data points. Points should be sorted by timestamp in ascending order to match the anomaly detection result. If the data is not sorted correctly or there is duplicated timestamp, the API will not work. In such case, an error message will be returned. Required.

class azure.ai.anomalydetector.models.UnivariateEntireDetectionResult(*args: Any, **kwargs: Any)[source]

The response of entire anomaly detection.

All required parameters must be populated in order to send to Azure.

Variables
  • period (int) – Frequency extracted from the series, zero means no recurrent pattern has been found. Required.

  • expected_values (list[float]) – ExpectedValues contain expected value for each input point. The index of the array is consistent with the input series. Required.

  • upper_margins (list[float]) – UpperMargins contain upper margin of each input point. UpperMargin is used to calculate upperBoundary, which equals to expectedValue + (100 - marginScale)*upperMargin. Anomalies in response can be filtered by upperBoundary and lowerBoundary. By adjusting marginScale value, less significant anomalies can be filtered in client side. The index of the array is consistent with the input series. Required.

  • lower_margins (list[float]) – LowerMargins contain lower margin of each input point. LowerMargin is used to calculate lowerBoundary, which equals to expectedValue - (100 - marginScale)*lowerMargin. Points between the boundary can be marked as normal ones in client side. The index of the array is consistent with the input series. Required.

  • is_anomaly (list[bool]) – IsAnomaly contains anomaly properties for each input point. True means an anomaly either negative or positive has been detected. The index of the array is consistent with the input series. Required.

  • is_negative_anomaly (list[bool]) – IsNegativeAnomaly contains anomaly status in negative direction for each input point. True means a negative anomaly has been detected. A negative anomaly means the point is detected as an anomaly and its real value is smaller than the expected one. The index of the array is consistent with the input series. Required.

  • is_positive_anomaly (list[bool]) – IsPositiveAnomaly contain anomaly status in positive direction for each input point. True means a positive anomaly has been detected. A positive anomaly means the point is detected as an anomaly and its real value is larger than the expected one. The index of the array is consistent with the input series. Required.

  • severity (list[float]) – The severity score for each input point. The larger the value is, the more sever the anomaly is. For normal points, the “severity” is always 0.

clear()None.  Remove all items from D.
copy()
get(k[, d])D[k] if k in D, else d.  d defaults to None.
items()a set-like object providing a view on D’s items
keys()a set-like object providing a view on D’s keys
pop(k[, d])v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()(k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d])D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F)None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()an object providing a view on D’s values
expected_values: List[float]

ExpectedValues contain expected value for each input point. The index of the array is consistent with the input series. Required.

is_anomaly: List[bool]

IsAnomaly contains anomaly properties for each input point. True means an anomaly either negative or positive has been detected. The index of the array is consistent with the input series. Required.

is_negative_anomaly: List[bool]

IsNegativeAnomaly contains anomaly status in negative direction for each input point. True means a negative anomaly has been detected. A negative anomaly means the point is detected as an anomaly and its real value is smaller than the expected one. The index of the array is consistent with the input series. Required.

is_positive_anomaly: List[bool]

IsPositiveAnomaly contain anomaly status in positive direction for each input point. True means a positive anomaly has been detected. A positive anomaly means the point is detected as an anomaly and its real value is larger than the expected one. The index of the array is consistent with the input series. Required.

lower_margins: List[float]

LowerMargins contain lower margin of each input point. LowerMargin is used to calculate lowerBoundary, which equals to expectedValue - (100 - marginScale)*lowerMargin. Points between the boundary can be marked as normal ones in client side. The index of the array is consistent with the input series. Required.

period: int

Frequency extracted from the series, zero means no recurrent pattern has been found. Required.

severity: Optional[List[float]]

The severity score for each input point. The larger the value is, the more sever the anomaly is. For normal points, the “severity” is always 0.

upper_margins: List[float]

UpperMargins contain upper margin of each input point. UpperMargin is used to calculate upperBoundary, which equals to expectedValue + (100 - marginScale)*upperMargin. Anomalies in response can be filtered by upperBoundary and lowerBoundary. By adjusting marginScale value, less significant anomalies can be filtered in client side. The index of the array is consistent with the input series. Required.

class azure.ai.anomalydetector.models.UnivariateLastDetectionResult(*args: Any, **kwargs: Any)[source]

The response of last anomaly detection.

All required parameters must be populated in order to send to Azure.

Variables
  • period (int) – Frequency extracted from the series, zero means no recurrent pattern has been found. Required.

  • suggested_window (int) – Suggested input series points needed for detecting the latest point. Required.

  • expected_value (float) – Expected value of the latest point. Required.

  • upper_margin (float) – Upper margin of the latest point. UpperMargin is used to calculate upperBoundary, which equals to expectedValue + (100 - marginScale)*upperMargin. If the value of latest point is between upperBoundary and lowerBoundary, it should be treated as normal value. By adjusting marginScale value, anomaly status of latest point can be changed. Required.

  • lower_margin (float) – Lower margin of the latest point. LowerMargin is used to calculate lowerBoundary, which equals to expectedValue - (100 - marginScale)*lowerMargin. Required.

  • is_anomaly (bool) – Anomaly status of the latest point, true means the latest point is an anomaly either in negative direction or positive direction. Required.

  • is_negative_anomaly (bool) – Anomaly status in negative direction of the latest point. True means the latest point is an anomaly and its real value is smaller than the expected one. Required.

  • is_positive_anomaly (bool) – Anomaly status in positive direction of the latest point. True means the latest point is an anomaly and its real value is larger than the expected one. Required.

  • severity (float) – The severity score for the last input point. The larger the value is, the more sever the anomaly is. For normal points, the “severity” is always 0.

clear()None.  Remove all items from D.
copy()
get(k[, d])D[k] if k in D, else d.  d defaults to None.
items()a set-like object providing a view on D’s items
keys()a set-like object providing a view on D’s keys
pop(k[, d])v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()(k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d])D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F)None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()an object providing a view on D’s values
expected_value: float

Expected value of the latest point. Required.

is_anomaly: bool

Anomaly status of the latest point, true means the latest point is an anomaly either in negative direction or positive direction. Required.

is_negative_anomaly: bool

Anomaly status in negative direction of the latest point. True means the latest point is an anomaly and its real value is smaller than the expected one. Required.

is_positive_anomaly: bool

Anomaly status in positive direction of the latest point. True means the latest point is an anomaly and its real value is larger than the expected one. Required.

lower_margin: float

Lower margin of the latest point. LowerMargin is used to calculate lowerBoundary, which equals to expectedValue - (100 - marginScale)*lowerMargin. Required.

period: int

Frequency extracted from the series, zero means no recurrent pattern has been found. Required.

severity: Optional[float]

The severity score for the last input point. The larger the value is, the more sever the anomaly is. For normal points, the “severity” is always 0.

suggested_window: int

Suggested input series points needed for detecting the latest point. Required.

upper_margin: float

Upper margin of the latest point. UpperMargin is used to calculate upperBoundary, which equals to expectedValue + (100 - marginScale)*upperMargin. If the value of latest point is between upperBoundary and lowerBoundary, it should be treated as normal value. By adjusting marginScale value, anomaly status of latest point can be changed. Required.

class azure.ai.anomalydetector.models.VariableState(*args: Any, **kwargs: Any)[source]

Variable Status.

Variables
clear()None.  Remove all items from D.
copy()
get(k[, d])D[k] if k in D, else d.  d defaults to None.
items()a set-like object providing a view on D’s items
keys()a set-like object providing a view on D’s keys
pop(k[, d])v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()(k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d])D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F)None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()an object providing a view on D’s values
effective_count: Optional[int]

Number of effective data points before applying fillNAMethod.

filled_n_a_ratio: Optional[float]

Proportion of missing values that need to be filled by fillNAMethod.

first_timestamp: Optional[datetime.datetime]

First valid timestamp with value of input data.

last_timestamp: Optional[datetime.datetime]

Last valid timestamp with value of input data.

variable: Optional[str]

Variable name in variable states.

class azure.ai.anomalydetector.models.VariableValues(*args: Any, **kwargs: Any)[source]

Variable values.

All required parameters must be populated in order to send to Azure.

Variables
clear()None.  Remove all items from D.
copy()
get(k[, d])D[k] if k in D, else d.  d defaults to None.
items()a set-like object providing a view on D’s items
keys()a set-like object providing a view on D’s keys
pop(k[, d])v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()(k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d])D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F)None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

timestamps: List[str]

Timestamps of last detection request. Required.

values: List[float]

Values of variables. Required.

variable: str

Variable name of last detection request. Required.