Skip to main content

A Python module to interact with Lariat API to access data quality metrics and diagnostics

Project description

Lariat Python SDK

A Python module to interact with Lariat API and perform various operations like querying indicators, fetching datasets, etc.

Installation

To install the package, run the following command:

pip install lariat_python_sdk

Usage

First, import the necessary components:

from lariat_client import configure, get_raw_datasets, get_datasets, get_indicators, get_indicator, query, Filter, FilterClause
import datetime

Set up your API key and application key:

API_KEY = "your-api-key"
APP_KEY = "your-app-key"

configure(api_key=API_KEY, application_key=APP_KEY)

Get raw datasets:

raw_datasets = get_raw_datasets(dataset_ids=[1, 2, 3])

Get computed datasets:

datasets = get_datasets()

Get indicators:

indicators = get_indicators(datasets=datasets)

Get a specific indicator:

indicator = get_indicator(id=1)

Query an indicator:

from_ts = datetime.datetime(2022, 1, 1)
to_ts = datetime.datetime(2022, 2, 1)
group_by = ["country"]
filter_clause = FilterClause(field="country", operator="in", values="US,UK")
query_filter = Filter(clauses=[filter_clause], operator="and")

results = query(indicator.id, from_ts, to_ts, group_by, query_filter=query_filter)

# Convert results to a DataFrame
results_df = results.to_df()

# Save results to a CSV file
results.to_csv("results.csv")

Use the RawQuery interface to add additional query arguments Note: Query arguments attached via the RawQuery interface are subject to changes in their backend interpretation. Use with caution

import lariat_client
import datetime

lariat_client.configure(api_key="some_key", application_key="some_other_key")
indicator = lariat_client.get_indicator(id=1234)
from_ts = datetime.datetime(2023, 5, 1)
to_ts = datetime.datetime(2023, 5, 10)

filter_clause = lariat_client.FilterClause(field="country", operator="in", values="USA")
query_filter = lariat_client.Filter(clauses=[filter_clause], operator="and")

raw_query = lariat_client.RawQuery(
        indicator_id=indicator.id,
        from_ts=from_ts,
        to_ts=to_ts,
        aggregate="distinct",
        query_filter=query_filter
)

raw_query.add_query_argument("x_axis", "custom_x_axis")
records = raw_query.send()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lariat_python_sdk-0.1.5.tar.gz (10.1 kB view hashes)

Uploaded Source

Built Distribution

lariat_python_sdk-0.1.5-py3-none-any.whl (8.4 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page