Direkt zum Inhalt springen
  • Drucken
  • Sitemap
  • Schriftgrösse

Datendownload leichtgemacht: tgAPI-Package für R-User

• OGD Blog

R-User aufgepasst! Das tgAPI-Package bietet OGD Nutzenden die Möglichkeit, Thurgauer Datensätze ganz einfach mit R zu nutzen.

Für viele R-User beginnt die Nutzung von Daten auf dem Open Government Data (OGD) Portal des Kanton Thurgaus so: File downloaden, Datei aus dem Download-Ordner in den vorgesehenen Ordner verschieben, Pfad kopieren und dann in R einlesen. Ziemlich viel Arbeit nur um einen Datensatz in R verarbeiten zu können, oder? Und was wäre, wenn ich die Daten in regelmässigem Abstand benötige und sie zum Beispiel täglich downloaden muss? Spätestens dann beginnt das Chaos der unzähligen CSV-Files, von denen man irgendwann oft auch nicht mehr so genau weiss, welches jetzt das aktuellste ist. Hier hilft das von uns entwickelte tgAPI-Package. Dank der darin enthaltenen Funktionen kann ganz einfach auf die Daten des Thurgauers OGD-Portal zugegriffen werden, ohne die eigene Festplatte unnötig mit CSV-Dateien zu überladen, und zwar direkt via API-Schnittstelle von data.tg.ch.

Application Programming Interfaces, kurz API, bieten Usern die Möglichkeit, mit externen Systemen zu interagieren. Unter anderem werden derartige Programmierschnittstellen dafür verwendet, Daten abzugreifen, ohne dafür explizit Dateien downloaden zu müssen. Auch das Thurgauer OGD-Portal besitzt eine solche Schnittstelle, bei der auf verschiedene Endpunkte zugegriffen werden kann. So können mithilfe der API sowohl der Datenkatalog mit sämtlichen Metadaten als auch explizite Datensätze im JSON- oder CSV-Format heruntergeladen werden. Wie alle anderen Bezugsmöglichkeiten für Thurgauer OGD ist auch die API komplett frei zugänglich. Und selbstverständlich ist die Schnittstelle kostenlos nutzbar.

Um den Umgang mit der API zu erleichtern, wenn R für die Weiterverarbeitung von OGD genutzt wird, haben wir das tgAPI-Package erstellt. In diesem Package werden alle Funktionen, die man zum Datendownload benötigt, in nutzerfreundlicher Weise zusammengefasst ("wrapping"). Auch die Installation ist kinderleicht. Zuallererst wird das devtools-Package benötigt, um Packages direkt von GitHub zu installieren. Nach der Installation von devtools tippt man einfach devtools::install_github("ogdtg/tgAPI") in die R-Konsole und schon befindet sich das Package in der eigenen Library. Es kann nun mit library("tgAPI") genutzt werden.

Kern des Packages sind drei Funktionen: get_catalog, get_dataset und get_field_descriptions. Um den Datenkatalog mit allen vorhandenen Daten zu sehen, kann die get_catalog Funktion genutzt werden. Sie verlangt keine zusätzlichen Parameter und lädt den Datenkatalog inklusive Metadaten direkt herunter.

Stösst man beim Durchstöbern des Datenkatalogs auf einen interessanten Datensatz, kann dessen ID aus dem Katalog entnommen und die Daten mit Hilfe der get_dataset Funktion herunterladen werden. Die ID muss dabei als Parameter angeben werden. Der Datensatz ist daraufhin als dataframe in R verfügbar.

Für ein besseres Verständnis der Variablennamen empfiehlt es sich die get_field_description Funktion zu nutzen. Äquivalent zur get_dataset Funktion gibt man auch hier einfach die Datensatz-ID als Parameter an und bekommt einen Datensatz, welcher ausführliche Variablenbeschreibungen sowie Informationen zum Datentyp enthält.

Wir hoffen, dass tgAPI die Arbeit mit den Daten des Kanton Thurgaus erleichtert. Der Code sowie eine genauere Beschreibung des Packages finden sich auf GitHub. Sollten Sie Fragen, Wünsche oder Anregungen zur API oder anderen OGD-Themen haben, schreiben Sie uns gerne an ogdNULL@tg.ch.

 

 

 

 

 

 

Aufrufe total: 71

Kommentieren

Formatierungsmöglichkeiten

Zur besseren Lesbarkeit Ihres Beitrags können Sie folgende Formatierungen der Auszeichnungssprache Markdown verwenden:

fett **fett**
kursiv *kursiv*
Listen * Eintrag 1
* Eintrag 2
nummerierte Listen 1. Eintrag 1
2. Eintrag 2
verschachtelte Listen Den Sub-Listeneinträgen 3 Leerschläge voranstellen.
Trennlinie ---
***
___
Code-Block <code></code>
Tastaturbefehl <kbd></kbd>
Inline-Code `inline_code.hbs`
Links werden automatisch umgewandelt oder maskiert via
[Linkziel](https://…)
Bild ![Alt Text](URL des Bilds)
Zitat > Zeile 1
> Zeile 2
Es können auch andere Elemente darin verschachtelt werden mit einem vorstehenden > +
Zeichen maskieren Mit vorangestelltem Backslash «» werden Markdown-Formatierungen nicht angewendet, sondern die eigentlichen Zeichen dargestellt.
Beispiele: *, #, _

zurück