dataseries.org1.0
← Startseite

Bibliotheken & APIs

Alle folgenden Wege lesen dieselben veröffentlichten Dateien. Die Zahlen sind also bei jedem Weg dieselben.

JSON-API

Eine HTTP-API mit reinem Lesezugriff unter https://dataseries.org. Ein Schlüssel ist nicht nötig.

EndpunktLiefert
GET /catalogdie vollständige Liste der Datensätze (ID, Titel, Quelle, Lizenz, Frequenz, Zeitraum, letzte Aktualisierung)
GET /dataset/{id}/metadie Metadaten eines Datensatzes: Dimensionen, Ausprägungen, Beschriftungen, Einheiten, Hierarchie
GET /series?dataset={id}&dims={spec}&from={date}&to={date}die ausgewählten Zeitreihen als spaltenorientiertes JSON
GET /series.csv?dataset={id}&dims={spec}&from={date}&to={date}dieselbe Auswahl als CSV im Long-Format (eine Zeile pro Beobachtung), lesbar für jedes Werkzeug, das eine CSV-URL öffnen kann
GET /healthStatus des Dienstes

dims wählt Ausprägungen innerhalb jeder Dimension, getrennt durch Semikolons, zum Beispiel structure=gdp;type=nom;seas_adj=csa. Ohne dims kommt der ganze Datensatz zurück. from und to sind optionale Datumsangaben im ISO-Format.

# Whole catalog
curl https://dataseries.org/catalog
# SECO GDP, nominal, seasonally adjusted, from 2000
curl "https://dataseries.org/series?dataset=ch_seco_gdp&dims=structure=gdp;type=nom;seas_adj=csa&from=2000-01-01"
# A single-series dataset
curl "https://dataseries.org/series?dataset=ch_kof_barometer"

Die Endpunkte sind unter /__docs__/ dokumentiert und lassen sich dort direkt ausprobieren. Die OpenAPI-Spezifikation liegt unter /openapi.json.

R

ds() nimmt eine Datensatz-ID und je Dimension ein Argument entgegen und gibt einen Data Frame mit einer Date-Spalte zurück. ds_catalog() listet die Datensätze auf, ds_meta() zeigt die Dimensionen und Codes eines Datensatzes, und ds_search() findet einzelne Zeitreihen.

install.packages("dataseries")
library(dataseries)
# SECO GDP, nominal, seasonally adjusted, from 2000
df <- ds("ch_seco_gdp", structure = "gdp", type = "nom", seas_adj = "csa",
         from = "2000-01-01")
# A single-series dataset: no dimension arguments
df <- ds("ch_kof_barometer")

Python

Das Python-Paket hat dieselben Funktionen wie das R-Paket und gibt pandas-DataFrames zurück. Die Datumsargumente heissen start und end statt from und to.

pip install dataseries
from dataseries import ds
# SECO GDP, nominal, seasonally adjusted, from 2000
df = ds("ch_seco_gdp", structure="gdp", type="nom", seas_adj="csa",
        start="2000-01-01")
# A single-series dataset: no dimension arguments
df = ds("ch_kof_barometer")

Andere Software

/series.csv liefert eine CSV-Datei. Jedes Werkzeug, das eine URL öffnen kann, liest eine Zeitreihe also direkt ein, mit denselben Filtern dims, from und to. Die Karte Diese Serie verwenden auf jeder Datensatzseite erzeugt den passenden Code für die aktuelle Auswahl.

# Stata
import delimited "https://dataseries.org/series.csv?dataset=ch_seco_gdp&dims=structure=gdp;type=nom;seas_adj=csa", clear
# MATLAB
T = readtable("https://dataseries.org/series.csv?dataset=ch_kof_barometer");
# Julia
using CSV, DataFrames, Downloads
df = CSV.read(Downloads.download("https://dataseries.org/series.csv?dataset=ch_kof_barometer"), DataFrame)
# Excel / Power Query: Data > Get Data > From Web, then paste the URL (refreshes in place)
https://dataseries.org/series.csv?dataset=ch_kof_barometer
# SAS
filename ds url "https://dataseries.org/series.csv?dataset=ch_kof_barometer";
proc import file=ds out=work.ds dbms=csv replace; run;
# curl / shell
curl "https://dataseries.org/series.csv?dataset=ch_kof_barometer"

Downloads

Jede Datensatzseite bietet die aktuelle Auswahl, mit allfälliger Transformation, als CSV, Excel oder JSON zum Download an, das Diagramm als PNG oder SVG. Die vollständigen Dateien jedes Datensatzes (CSV-Daten, JSON-Metadaten und eine Parquet-Kopie) liegen im Repository dataseries-data.

Diagramme einbetten

Diagramme lassen sich mit einem iframe in jede Webseite einbetten. Der Reiter Einbetten der Karte Diese Serie verwenden erzeugt den Code für die aktuelle Auswahl. Eingebettete Diagramme aktualisieren sich, sobald neue Daten vorliegen.

<iframe
  src="https://dataseries.org/d/ch_kof_barometer?embed=1"
  width="100%" height="580" style="border:0;border-radius:12px"
  loading="lazy" title="KOF Barometer, dataseries.org">
</iframe>