sdk.analysis_config.create()
elements.sdk.api.analysis_config
Create an Analysis Config.
Creates a configuration of the specified Analysis Version, including concrete values for each Algorithm Config.
Parameters
- analysis_version_id (str) - Analysis Version to create config for
- name (str) - name of the Analysis Config
- description (str) - description of the Analysis Config
- algorithm_config_nodes (List[AnalysisAlgorithmConfigNode]) - list of per-node Algorithm Configs to apply to the Analysis DAG
Returns
AnalysisConfig
Analysis BuilderSee the Analysis Builder section for more details on how to construct an Analysis Config.
Example(s)
# Configure Device Visits node
dv_algo_config = AlgorithmConfiguration()
dv_algo_config.add_data_source(data_type=DataType.PINGS.value, data_source=DataSource.ADSBX)
dv_algo_config.add_algorithm_parameter(key="look_back_time", value=5)
dv_algo_config.add_algorithm_parameter(key="look_forward_time", value=5)
dv_algo_config.grouping_frequency(frequency=Frequency.WEEKLY, value=1)
dv_config = await sdk.algorithm_config.create(
algorithm_version_id="5ee03b8e-ab45-4553-b5f4-a5029254a9de",
name="Device Visits",
description="Produces an initial list of AOI visits per device",
algorithm_config=dv_algo_config)
# Configure create Device Tracks node
dt_algo_config = AlgorithmConfiguration()
dt_algo_config.add_data_source(data_type=DataType.TRACK_PINGS.value, data_source=DataSource.ADSBX_TRACKS)
dt_algo_config.grouping_frequency(frequency=Frequency.WEEKLY, value=1)
dt_config = await sdk.algorithm_config.create(
algorithm_version_id="6f7cff18-c2a2-4246-b0d4-21be09673a6b",
name="Device Tracks",
description="Queries device tracks before and/or after presence at AOI",
algorithm_config=dt_algo_config)
# Get node names
analysis = await sdk.analysis_version.get(ids=["c4f5c5db-cd81-403c-a0b3-e486ba47315f"],
include_algorithm_details=True, include_manifest=True)
# The following node names should match the node names specified in the Analysis Version when
# you add to the AnalysisManifest() manifest.add_node()
dv_node_name = 'device-visits'
dt_node_name = 'device-tracks'
# Add nodes to Analysis Config
config = AnalysisConfiguration(analysis_version_id="c4f5c5db-cd81-403c-a0b3-e486ba47315f")
config.add_config_node(name=dv_node_name, algorithm_config_id=dv_config.id)
config.add_config_node(name=dt_node_name, algorithm_config_id=dt_config.id)
# Create Analysis Config
await sdk.analysis_config.create(
analysis_version_id="c4f5c5db-cd81-403c-a0b3-e486ba47315f",
algorithm_config_nodes=config.get(),
name="My Awesome Analysis Config",
description="Analysis Config with Device Visits and Device Tracks")
# Output (AnalysisConfig)
analysis_version {
}
id: "ac9f25c2-48ba-48b1-b096-ac3d0ec83c21"
name: "My Awesome Analysis Config"
description: "Analysis Config with Device Visits and Device Tracks"Updated 6 months ago