KNIME: Tipps & Co. Nr.01

Schnell eine Spalte von Nicht-String auf String umstellen:

  • Reinziehen u. Andocken von „String Manipulation.
  • Da reinschreiben: „join(string($$$[DeineSpalte]$$$))“

In einer Spalte einen Substring finden und den Fundort innerhalb des Strings speichern:

  • Reinziehen u. Andocken von „String Manipulation“
  • Da reinschreiben: „indexOf($[DeineSpalte]$, „[DeinSuchbegriff]“)“
  • Bei „Append Column“ ggf. eine neue Spalte benennen.

Simple If-Then-Else-Anweisungen durchführen lassen

  • Rule Engine in die Arbeitsfläche ziehen und Andocken
  • Bei Expression reinschreiben: „$[DeineSpalte$ > 0 =>1 // NOT ($[DeineSpalte]$ >0) => 0“. Das // sagt aus, dass hier ein Zeilenumbruch reingehört.

Wie kann ich: bei KNIME Spalten nach Substring(s) filtern?

Das war heute eine wichtige Fragestellung und die Lesenden des Blogs mögen so handeln:

  • Wissen, welche SPALTE denn durchgefiltert werden soll!
  • Row Filter (Komponente) auf die Arbeitsfläche ziehen und entsprechend andocken!
  • In der Konfiguration: „Column to test“ auswählen und die „Matching criteria“ anpassen.
  • Hinweis! Wichtig! Teilstrings haben so deklariert zu werden, wie im Screenshot gezeigt. Also: *schule“ filtert alles, wo „schule“ vorkommt (Hochschule, Hauptschule).

Der Rest dürfte analog zum Screenshot selbsterklärend sein und Fragen gerne in die Kommentare.

Erste Testläufe mit KNIME – 3DScatter Plot durchgeführt

Die letzten 2 Tage waren stark geprägt von wichtigen + projektbezogenen Datenvisualisierungsaspekten. Weil mir immer wieder gespiegelt wird, dass dieses 3D-Element wichtig für die Veranschaulichung v. Erkenntnissen ist, entschied ich mich für die Einbindung dieser Komponente.

Datengrundlage ist hier jeweils der aktuelle Bestand unter dem Thema „HomeSchooling“ mit Ausfilterung auf Digitalisierung, Familie, Schule und weiteren Aspekten.

Ich verstehe JETZT, warum die Datascience-Kunst durchaus kostenintensiv ist, denn das Einarbeiten in KNIME und das Komponieren der Analysestrecke hat allein mich ca. 4 Tage gekostet.

Wir diskutieren intern noch diverse Reportingszenarien durch und ich bin persönlich nicht begeistert von den Layoutmöglichkeiten von KNIME, weswegen ich die Thematik streng manuell halten will. Das „fühlt“ sich auch besser an, weil auch schöne Grafiken letztendlich eine individuelle Erklärung verlangen. Dafür bezahlt man immerhin sehr viel Geld.

Datenvisualisierung und Start der KNIME-Reihe

Im letzten Jahr fand ich endlich Gelegenheit zur Sichtung diverser Datenmanagement- und Datenauswertungsansätze, weil ich ab einem gewissen Punkt mit meiner Programmierkunst via Delphi viele Szenarien nicht abdecken kann.

So landete ich bei KNIME und fand einen guten Weg, die Workflows zu verstehen und in das Tagesgeschäft einbauen zu können. Interessant ist, dass dieses mächtige und sehr umfangreiche System gefühlt problemlos bspw. die 85GB umfassende Twitterdatenbank oder die 46GB starke InstagramDE/CH/AT-Datenbank andocken, bearbeiten und für diverse Dataminingszenarien ansprechen kann.

Galerie zeigt 2 Screenshots, welche Terms / Keywords aus den Meinungsbekundungen von ~3.8Mio DE-schreibenden Accounts (Twitter) mit Filter auf Covid19/Pandemie/Coronavirus (Themencluster).

Der „Trick“ ist eigentlich recht simpel: sofern die Datenerfassungsprozedur stabil funktioniert und die Datenbank ordentliche Standards (Technik, Struktur etc.) zeigt, wird via KNIME-Workflow eine Analysemechanik auf die Tweets quasi „angesetzt“. Diese zerlegt den Content in Einzelworte, gewichtet diesen mittels einer Prozedur, welche folgende Metriken beinhaltet:

  • Interaktionen
  • Zeitstempel
  • Anzahl: aktiver Accounts mit Themenfilter

Über diesen Gewichtungsschritt sind Themenzusammenhänge der UnterCluster visualisierbar und das erste Bild der Galerie demonstriert die Zusammenfassung der Themenwolken in Filterblasenstrukturen.