ft:Metapedia

Feedback, Anregungen, Kritik, Themenwünsche zur ft:pedia
Feedback, Proposals, Reviews, Themewishes according ft:pedia

Moderator: ft:pedia-Herausgeber

Antworten
tintenfisch
Beiträge: 472
Registriert: 03 Jan 2018, 22:04

ft:Metapedia

Beitrag von tintenfisch » 06 Feb 2023, 10:08

Hallo zusammen,

unter <https://github.com/heuer/ftmedia> ist etwas Code zu finden, um u.a. mit der CSV-Datei <https://ftcommunity.de/ftpedia/overview/> evtl. etwas einfacher arbeiten zu können.

Man kann sich bspw. ausgeben lassen, wie viele Artikel die Autoren jeweils geschrieben haben (abzüglich der Editorials):

Code: Alles auswählen

from pprint import pprint
import ftmedia
pprint(ftmedia.author_occurrences(ad for ad in ftmedia.read_overview('artikeluebersicht.csv') if ad.category != 'Editorial'))

Counter({'Dirk Fox': 60,
         'Stefan Falk': 55,
         'Rüdiger Riedel': 53,
         'Andreas Gail': 26,
         'René Trapp': 23,
         'Hans-Christian Funke': 22,
         'Thomas Püttmann': 22,
         'Harald Steinhaus': 19,
[…]
Oder die häufigsten Kategorien:

Code: Alles auswählen

pprint(Counter(ftmedia.main_category_name(ad.category) for ad in ftmedia.read_overview('artikeluebersicht.csv')))

Counter({'Modell': 172,
         'Computing': 138,
         'Tipps & Tricks': 86,
         'Elektronik': 54,
         'Editorial': 48,
         'Mechanik': 25,
         'Elektromechanik': 22,
         'Grundlagen': 20,
         'Getriebe': 15,
         'Reportage': 10,
         'Optik': 7,
         'Pneumatik': 7,
         'Elektrotechnik': 4,
         'Physik': 1})
Letztendlich kann man das auch alles machen, wenn man die CSV-Datei in eine DB importiert, aber evtl. findet jemand das als Startpunkt für eigene Projekte / Statistiken hilfreich.

Viele Grüße
Lars

Benutzeravatar
steffalk
ft:pedia-Herausgeber
Beiträge: 1792
Registriert: 01 Nov 2010, 16:41
Wohnort: Karlsruhe
Kontaktdaten:

Re: ft:Metapedia

Beitrag von steffalk » 06 Feb 2023, 15:21

Tach auch!

Da kann ich vielleicht etwas ergänzen: Für interne Auswertungen und um die Anzahl verschiedener Kategorien im Griff zu behalten haben wir noch etwas, was sich "Hauptrubrik" nennt. Eine Kategorie kann selbst auch Hauptrubrik sein, gehört aber jedenfalls zu einer. Das ist die aktuelle Liste:

Code: Alles auswählen

Hauptrubrik	Rubrik
Computing	Computing
Computing	Messen (Computing)
Computing	Robotik (Computing)
Computing	Sensoren (Computing)
Editorial	Editorial
Elektromechanik	Elektromechanik
Elektromechanik	Nachrichtentechnik (Elektromechanik)
Elektromechanik	Schaltungstechnik (Elektromechanik)
Elektronik	Elektronik
Elektrotechnik	Elektrotechnik
Getriebe	Getriebe
Grundlagen	fischertechnik-Basiswissen (Grundlagen)
Grundlagen	ft-Geschichte (Grundlagen)
Grundlagen	Grundlagen
Grundlagen	Puzzle – Rätsel (Grundlagen)
Grundlagen	Regelungstechnik (Grundlagen)
Mechanik	Analogcomputer (Mechanik)
Mechanik	Antriebstechnik (Mechanik)
Mechanik	Flugzeugtechnik (Mechanik)
Mechanik	Hydraulik (Mechanik)
Mechanik	Kinematik (Mechanik)
Mechanik	Mechanik
Mechanik	Mechanisches Rechnen (Mechanik)
Mechanik	Uhren (Mechanik)
Modell	Astronomie (Modell)
Modell	Einsteigermodell (Modell)
Modell	Fahrzeugtechnik (Modell)
Modell	Messtechnik (Modell)
Modell	Modell
Modell	Modellbahn (Modell)
Modell	Modellideen (Modell)
Modell	Projekt (Modell)
Modell	Schienenfahrzeuge (Modell)
Modell	Uhren (Modell)
Modell	Wissenschaft (Modell)
Optik	Optik
Physik	Physik
Pneumatik	Pneumatik
Reportage	Convention (Reportage)
Reportage	Erfahrungsbericht (Reportage)
Reportage	In eigener Sache (Reportage)
Reportage	Rätsel (Reportage)
Reportage	Reportage
Reportage	Würdigung (Reportage)
Tipps & Tricks	3D-Modellentwurf (Tipps & Tricks)
Tipps & Tricks	Baukasten (Tipps & Tricks)
Tipps & Tricks	Tipps & Tricks
Viele Grüße,
Stefan

tintenfisch
Beiträge: 472
Registriert: 03 Jan 2018, 22:04

Re: ft:Metapedia

Beitrag von tintenfisch » 06 Feb 2023, 17:15

Hi Stefan,

danke für den Hinweis; ich habe ein bißchen was umgestellt, was zu etwas kürzerem Code führt, wobei diese Statistiken gar nicht Hauptzweck des Modules waren:

Der Vollständigkeit halber der aktualisierte Code, ohne nun den Thread hier vollspammen zu wollen, zumal Du das aus Deiner DB eh auslesen kannst. ;)

Code: Alles auswählen

>>> impot ftmedia
>>> from pprint import pprint
>>> from collections import Counter
>>>
>>> # Alle Rubriken bzw. wieviele Artikel wurden unter Rubrik XY veröffentlicht
>>> pprint(Counter(ad.category for ad in ftmedia.read_overview('artikeluebersicht.csv')))
Counter({'Modell': 151,
         'Computing': 132,
         'Tipps & Tricks': 80,
         'Elektronik': 54,
         'Editorial': 48,
         'Getriebe': 15,
         'Elektromechanik': 14,
         'Grundlagen': 8,
         'Mechanik': 7,
         'Optik': 7,
         'Schaltungstechnik (Elektromechanik)': 7,
         'Pneumatik': 7,
         'ft-Geschichte (Grundlagen)': 5,
         'Antriebstechnik (Mechanik)': 5,
         'Mechanisches Rechnen (Mechanik)': 5,
         'fischertechnik-Basiswissen (Grundlagen)': 5,
         'Uhren (Modell)': 4,
         'Fahrzeugtechnik (Modell)': 4,
         'In eigener Sache (Reportage)': 4,
         'Baukasten (Tipps & Tricks)': 4,
         'Elektrotechnik': 4,
         'Messen (Computing)': 3,
         'Kinematik (Mechanik)': 3,
         'Projekt (Modell)': 3,
         'Erfahrungsbericht (Reportage)': 2,
         'Modellideen (Modell)': 2,
         'Sensoren (Computing)': 2,
         'Schienenfahrzeuge (Modell)': 2,
         '3D-Modellentwurf (Tipps & Tricks)': 2,
         'Flugzeugtechnik (Mechanik)': 2,
         'Einsteigermodell (Modell)': 2,
         'Hydraulik (Mechanik)': 1,
         'Physik': 1,
         'Convention (Reportage)': 1,
         'Uhren (Mechanik)': 1,
         'Regelungstechnik (Grundlagen)': 1,
         'Rätsel (Reportage)': 1,
         'Würdigung (Reportage)': 1,
         'Wissenschaft (Modell)': 1,
         'Puzzle – Rätsel (Grundlagen)': 1,
         'Messtechnik (Modell)': 1,
         'Robotik (Computing)': 1,
         'Analogcomputer (Mechanik)': 1,
         'Nachrichtentechnik (Elektromechanik)': 1,
         'Reportage': 1,
         'Modellbahn (Modell)': 1,
         'Astronomie (Modell)': 1})

>>>
>>> # Hauptrubriken bzw. wieviele Artikel wurden unter den Hauptrubriken veröffentlicht
>>> pprint(Counter(ad.main_category for ad in ftmedia.read_overview('artikeluebersicht.csv')))
Counter({'Modell': 172,
         'Computing': 138,
         'Tipps & Tricks': 86,
         'Elektronik': 54,
         'Editorial': 48,
         'Mechanik': 25,
         'Elektromechanik': 22,
         'Grundlagen': 20,
         'Getriebe': 15,
         'Reportage': 10,
         'Optik': 7,
         'Pneumatik': 7,
         'Elektrotechnik': 4,
         'Physik': 1})
Viele Grüße
Lars

Antworten