CREATE INDEX people_idx1 ON interakt(name,url,uid,postid,posturl,tagcloud,inflid,inflname,postzeit,zeit);
DROP INDEX people_idx1;
Kategorie-Archiv: Interaktionen-Projekt
Projekt „Instagram, Interaktionen“ – Basisaccountanalyse(n)
Die Auswertungsanwendung verfügt nun über zwei Basisanalyseprozeduren. Diese sind:
Ausgabe der erfassten Likes zu einem bestimmten Accounts:
(1) Ergebnisse inkl. Tagclouds, Posturls, Postzeitpunkt und (beherzter) Influenceraccount
tg_05
tg_04
liberal
tg_03
tg_02
tg_01
(2) Ergebnisse inkl. beherzter Influencername und Aufsummierungen der Likes JE erfassten / beherzten Influencer
ta_06
ta_05
ta_04
ta_03
ta_02
ta_01
Diese Funktionen dienen einer ersten und sehr groben Erkenntnisgewinnung. Zu einem späteren Zeitpunkt werden die Prozeduren so zusammen gefasst, dass sich aus der Analyse eines Influencer (oder: Einsteiger)-accounts Likemuster der Interagierenden sichtbar machen lassen. Mir schwebt hierbei eine Influencer und / oder Tagcloudauflistung inkl. Gewichtung via Aufsummierung vor und ich muss hierzu noch einige Inspirationen suchen.
Projekt „Instagram, Interaktionen“ – Tagcloudanalysen
Die Abfrage für die nachfolgenden Datensätze ist:
select tagcloud, length(tagcloud), count(distinct(uid)), count(distinct(inflname)), count(distinct(postid)) from interakt where tagcloud like ''%'+abfrage+'%'' group by tagcloud;
Die aktuellen Ergebnisse beinhalten folgende Angaben:
(1) Tagcloud (tagcloud) (als substring)
(2) Zeichenkettenlänge der Tagcloud (length(tagcloud))
(3) Anzahl der Interaktionen // Anzahl der Interagierenden Accounts (count(distinct(uid))
(4) Anzahl der Influencer-Accounts (count(distinct(inflname))
(5) Anzahl der Postings (count(distinct(postid))
Alle Angaben verstehen sich als „je UNIQUE Tagcloud“ und DIE Tagcloud beschreibt die Tagsammlungen.
Beispieldatensätze (Excel, Download)
[Politik]
Download: christianlindner
Download: bundestagswahl
Download: bundestag
Download: dielinke
[Wohnung, Home & Living]
Download: badezimmer
Download: wohnzimmer
Download: kinderzimmer
[Städte]
Download: leipzig
Download: berlin
[Sonstiges]
Download: geschenk
Download: stricken
[Urlaub]
Download: urlaub
Download: strand
Download: meer
[Hinweise und allgemeine (!) Erklärungen]
Die Angabe zur Zeichenkettenlänge der jeweiligen Tagwolken liefert in Verbindung mit den Zahlen aus (3), (4) und (5) eine Interpretationsgrundlage für die Beantwortung folgender Fragen:
– Wieviele Tags machen je Posting Sinn?
– Welche Taghäufungen im Sinne der reinen Anzahl provozier(t)en wieviele Likes?
Exkludiert man nun besagte Zeichenkettenlänge aus der Datenbegutachtung, ergeben sich in Verbindung mit den Zahlen aus (3), (4) und (5) die Möglichkeit(en) zur Beantwortung folgender Fragen:
– Welche Themen in Form der Tags „kommen an“?
– Welche Themen in Form der Tags werden von wieviel Accounts wahrgenommen UND honoriert?
– Welche Themen in Form der Tags werden von wieviel Accounts veröffentlicht?
Die Datensätze liefern einen relativ groben Überblick zu den gesuchten Themen. Sie geben analog zur genannten Abfrage keinerlei Auskunft zu den Postingzeiträumen und den konkreten Interagierenden / Influencern, da hier diese Angaben nicht mitgeliefert werden. Hier ist eine entsprechende Tiefenprüfung via erweiterter DB-Abfrage natürlich obligatorisch.
Anfragen, Nachfragen und generelle Gesprächsangebote bitte an office(at)pontipix.de.
Datenbankstatistik zu einzelnen Themen oder Tagclouds
Die nachstehenden Auflistungen sind das Ergebnis der Query
select count(distinct(tagcloud)), count(distinct(name)), count(distinct(inflname)) from interakt where tagcloud like '%suchwort%'
Tag: „leipzig“
Anzahl: Unique Tagclouds
-> 9.827
Anzahl: Unique Interagierende
-> 146.276
Anzahl: Unique Influencer
-> 216
Anzahl: Unique Postings
-> 12.185
Tag: „dresden“
Anzahl: Unique Tagclouds
-> 3.161
Anzahl: Unique Interagierende
-> 77.986
Anzahl: Unique Influencer
-> 177
Anzahl: Unique Postings
-> 5.138
Tag: „deutschland“
Anzahl: Unique Tagclouds
-> 9.061
Anzahl: Unique Interagierende
-> 251.766
Anzahl: Unique Influencer
-> 606
Anzahl: Unique Postings
-> 16.295
Tag: „germany“
Anzahl: Unique Tagclouds
-> 13.108
Anzahl: Unique Interagierende
-> 363.668
Anzahl: Unique Influencer
-> 869
Anzahl: Unique Postings
-> 20.753
Tag: „ilove“
Anzahl: Unique Tagclouds
-> 4.617
Anzahl: Unique Interagierende
-> 177.349
Anzahl: Unique Influencer
-> 470
Anzahl: Unique Postings
-> 6.310
Tag: „weihnachten“
Anzahl: Unique Tagclouds
-> 1.642
Anzahl: Unique Interagierende
-> 68.371
Anzahl: Unique Influencer
-> 389
Anzahl: Unique Postings
-> 1.723
Tag: „geschenk“
Anzahl: Unique Tagclouds
-> 913
Anzahl: Unique Interagierende
-> 31.401
Anzahl: Unique Influencer
-> 212
Anzahl: Unique Postings
-> 1.158
Tag: „kind“
Anzahl: Unique Tagclouds
-> 8.546
Anzahl: Unique Interagierende
-> 147.098
Anzahl: Unique Influencer
-> 589
Anzahl: Unique Postings
-> 9.093
Tag: „geburtstag“
Anzahl: Unique Tagclouds
-> 786
Anzahl: Unique Interagierende
-> 35.340
Anzahl: Unique Influencer
-> 249
Anzahl: Unique Postings
-> 870
Tag: „sachsen“
Anzahl: Unique Tagclouds
-> 2.314
Anzahl: Unique Interagierende
-> 57.694
Anzahl: Unique Influencer
-> 229
Anzahl: Unique Postings
-> 3.095
Tag: „saxony“
Anzahl: Unique Tagclouds
-> 2.989
Anzahl: Unique Interagierende
-> 80.401
Anzahl: Unique Influencer
-> 73
Anzahl: Unique Postings
-> 4.995
Tag: „urlaub“
Anzahl: Unique Tagclouds
-> 8.190
Anzahl: Unique Interagierende
-> 223.861
Anzahl: Unique Influencer
-> 673
Anzahl: Unique Postings
-> 8.880
Tag: „berlin“
Anzahl: Unique Tagclouds
-> 12.667
Anzahl: Unique Interagierende
-> 317.704
Anzahl: Unique Influencer
-> 1.465
Anzahl: Unique Postings
-> 13.527
Tag: „bundestagswahl“
Anzahl: Unique Tagclouds
-> 700
Anzahl: Unique Interagierende
-> 16.092
Anzahl: Unique Influencer
-> 216
Anzahl: Unique Postings
-> 725
Tag: „bundestag“
Anzahl: Unique Tagclouds
-> 1.657
Anzahl: Unique Interagierende
-> 32.948
Anzahl: Unique Influencer
-> 350
Anzahl: Unique Postings
-> 1.670
Tag: „liberal“
Anzahl: Unique Tagclouds
-> 661
Anzahl: Unique Interagierende
-> 11.654
Anzahl: Unique Influencer
-> 166
Anzahl: Unique Postings
-> 699
Tag: „wohnung“
Anzahl: Unique Tagclouds
-> 487
Anzahl: Unique Interagierende
-> 16.475
Anzahl: Unique Influencer
-> 97
Anzahl: Unique Postings
-> 795
Tag: „zimmer“
Anzahl: Unique Tagclouds
-> 790
Anzahl: Unique Interagierende
-> 35.563
Anzahl: Unique Influencer
-> 159
Anzahl: Unique Postings
-> 853
Datenbankstatistik: Stand (19.09.2017) – Projekt „Instagram, Interaktionen“
Die Datenbank umfasst aktuell folgende Einträge
Unique Tagclouds: 236.054
Unique Interagierende: 3.847.440
Unique Influencer: 4.636
Unique analysierte Postings: 341.505
Unique Zeitstempel / Postings: 340.606
Anzahl-DB-Einträge: 25.667.807
Datenbankerweiterung und Datenbankupdate
Nach einigen Gesprächen und Analysen entschied ich mich zu einer Erweiterung der Datenbank. Diese hat nun die folgende Struktur (Quellecodeauszug aus dem Datenerfassungsprogram):
with memo do
begin
lines.Add('drop table if exists interakt;');
lines.Add('CREATE TABLE `interakt` (');
lines.Add(' `id` integer primary key AUTOINCREMENT,');
lines.Add('`name` varchar(400),');
lines.Add('`url` varchar(400),');
lines.Add('`uid` varchar(400),');
lines.Add('`postid` varchar(400),');
lines.Add('`posturl` varchar(400),');
lines.Add('`tagcloud` varchar(1600),');
lines.Add('`inflid` varchar(400),');
lines.Add('`inflname` varchar(400),');
lines.Add('`postzeit` varchar(400),');
lines.Add('`zeit` varchar(400)');
lines.Add(');');
end;
[Liste: Variablen]
„id“ => laufende Nummer
„name“ => Name des likenden Accounds
„url“ => Profilurl des likenden Accounts
„uid“ => ID des likenden Accounts
„postid“ => ID des beherzten Mediums
„posturl“ => URL des berherzten Mediums
„tagcloud“ => Tagcloud des beherzten Mediums [NEU]
„inflid“ => ID des Accounts des beherzten Mediums [NEU]
„inflname“ => Name des Accounts des beherzten Mediums [NEU]
„postzeit“ => Zeitstempel, Postzeitpunkt des beherzten Mediums [NEU]
„zeit“ => Scrapingzeitpunkt
Das final festgelegte Datenbankformat ist nun SQLite. Die Datenbank umfasst in der aktuellen Version und Struktur ca. 30GB und es lassen sich nun auch relativ sauber die folgenden Fragen entweder beantworten oder interpretieren:
(1) Wieviele Tags machen je Projekt oder Thema überhaupt Sinn?
(2) Wie beliebt oder unbeliebt sind Tags und Tagkombinationen?
(3) Welche Postzeitpunkte ziehen hohe Likeaufkommen / Interaktionen nach sich?
(4) Wie aktiv sind Likende auf den Accounts div. Influencer?
(5) Existieren Querverbindungen zwischen Themen und Themenkombinationen (Tags und Tagclouds)?
(6) Existieren Muster und Auffälligkeiten im Likeverhalten? (Bots, Fakes?)
(7) u.v.m.
Die Datenbank wird relativ unregelmäßig aktualisiert. Befreundete Kolleg_innen, unsere Kund_innen und interessierte Gesprächspartner_innen erhalten zeitnah Zugriff auf die Datenbank in Form einer spezielleren Schnittstelle (eMail-basiert).
Interaktionsanalyseprojekt (Instagram) Datenbankqueries
Nachfolgend einige Queries für die Interaktionen-Datenbank. Ich bitte die Hinweise zu beachten, welche am Ende der Liste stehen.
(A) Basisabfragen
(1) Einträge zählen
select count (*) from interaktionen.interakt
(2) Interaktionen (nach Accountname) aufsummieren
select count (distinct(name)) from interaktionen.interakt
(3) Tagclouds zählen
select count (distinct(tagcloud)) from interaktionen.interakt
(4) Tagclouds ausgeben
select distinct(tagcloud) from interaktionen.interakt group by tagcloud
(B) Likende / Interagierende
(1) Likende inkl. der Aufsummierung DEREN Likes
select count (name), name from interaktionen.interakt group by name order by count(name) DESC
select count (name), name from interaktionen.interakt group by name
select count(uid), name from interakt group by name order by count(uid) DESC;
(2) Likende und die gelikten Posts
select tagcloud, inflname from interakt where name = “’+edit1.text+“‘ order by inflname DESC
(C) Influencer / analysierte Accounts
(1) Ausgabe und Zuordnung der Likenden zu den analysierten Accounts (Influencer)
select inflname, name from interakt where name like ‚cdu%‘ group by name
Hinweis: „like ‚cdu%“ lässt sich entsprechend zu „‚%suchstring'“ oder auch „‚%suchstring%'“ austauschen
(2) Ausgabe und Aufsummierung der Interaktionen ZU DEN Influenceraccounts
select count (inflid), inflname from interaktionen.interakt group by inflid order by count(inflid) DESC;
select count (inflid), inflname from interaktionen.interakt group by inflid;
(3) Influencer auflisten
select distinct(inflname) from interakt;
(4) Influencer inkl. Summe der Likenden / Likes
select count(name),inflid,inflname from interakt group by inflname order by count (name);
(D) Tagclouds
(1) Ausgabe und Gewichtung der Tagclouds nach Aufsummierung der Likes je Tagcloud
select count(tagcloud), tagcloud from interakt group by tagcloud order by count(tagcloud) DESC;
(E) Tiefergehende Abfragen
(1) Auflistung von Interaktionen aus zwei Influenceraccounts.
select i1.inflid, i1.url, count(distinct i1.id) as „Anzahl1“ ,
count(distinct i2.id) as „Anzahl2“
from (select * from interakt where interakt.inflid = ‚ID1‘) „i1“
join (select * from interakt where interakt.inflid = ‚ID2‘) „i2“ on
(i1.url = i2.url)
group by i1.inflid, i1.url order by „Anzahl1“ desc, „Anzahl2“ desc
Quelle: Jens Pacholsky http://startup-helpers.de/
Sämtliche Abfragen wurden grob (!) auf Fehler geprüft und ich nehme für mich hier nicht die absolute Eleganz oder Fehlerfreiheit in Anspruch. Weitere Abfragen werden in unregelmäßigen Abständen hier hinzugefügt.