Main

View or edit on GitHub

This page is synchronized from trase/models/brazil/beef/main.ipynb. Last modified on 2026-03-21 22:30 CET by Trase Admin. Please view or edit the original file there; changes should be reflected here after a midnight build (CET time), or manually triggering it with a GitHub action (link).

from trase.tools import sps
from quality_assurance import quality_assurance

years = [2021, 2022, 2023]
for year in years:
    supplychain = sps.SupplyChain("brazil/beef", year=year)
    supplychain.preparation()
    supplychain.load()
    supplychain.run()
    supplychain.flow_report_by_attribute("vol", ["branch"])
    supplychain.flow_report_by_attribute("vol", ["geocode_source"])
    # supplychain.flow_report_by_attribute("vol", ["zdc"])
    supplychain.export_results(flows=False)
    quality_assurance(year)
    supplychain.upload_results()
df = supplychain.get("flows")
# df[df["exporter_cnpj"] == "45007630000479"].sample(1).T
import duckdb

duckdb.sql(
    """
SELECT 
    COUNT(*) AS record_count,
    (SUM(vol) / 1000)::INT64 AS tonnes,
    ROUND(100.0 * (SUM(vol) / 1000) / 
        (SELECT SUM(vol) / 1000.0 FROM df), 2) AS percentage_of_total,
    CASE
        WHEN exporter_cnpj = 'INVALID' THEN 'INVALID' 
        ELSE 'VALID' 
    END AS cnpj_status
FROM df
GROUP BY cnpj_status
"""
).df()
supplychain.run()