Hallo, ich würde gerne eine große Menge Messdaten, die als CSV vorliegen, automatisiert in Form von Reports aufbereiten. Endprodukt ist ein von Latex erzeugtes PDF, das Kopf- und Fußzeilen, einige Plots, Tabellen und automatisch erzeugten Text enthält. Der Workflow sieht so aus: - CSV-Datei parsen - Messdaten nach verschiedenen Gesichtspunkten auswerten, dazu müssen Filteralgorithmen und Statistik-Funktionen angewendet werden, teilweise gibt es noch zusätzliche Berechnungen mit exp() und ln() - wahrscheinlich ist eine sinnvolle Art der Zwischenspeicherung oder Indizierung nötig - Aufrufen von gnuplot, um Plots als PDF zu generieren - Aufrufen von Latex, um die Plots zusammen mit zusätzlichen Informationen schick aufzubereiten Welche Skriptsprache ist eurer Meinung nach am besten für so etwas geeignet?
Ipython und zum Einstieg 'Jupyter', was frueher unter Ipython Notebook lief.
Ich würde auch Python empfehlen, und die Plots direkt mit matplotlib/pyplot machen, dann sparst du dir den Umweg über Gnuplot, bei ähnlicher Qualität der Plots.
Wenn du Kohle hast: Matlab + Signal Processing Toolkit Wenn du die nicht hast: Python + Toolkits Scilab ist mir zu rudimentaer.
Jochen schrieb: > Welche Skriptsprache ist eurer Meinung nach am besten für so etwas > geeignet? Perl
Ich hab's zwar selber noch nicht ausprobiert, aber deiner Problembeschreibung nach könnte auch R ein Kandidat sein: https://www.r-project.org/
Python mit numpy, pylab und r2py bietet alles was du brauchst.
Jochen schrieb: > ich würde gerne eine große Menge Messdaten, die als CSV vorliegen, > automatisiert in Form von Reports aufbereiten. Was heißt "eine große Menge"? Wieviele Zeilen, wieviele Spalten? > Endprodukt ist ein von Latex erzeugtes PDF, das Kopf- und Fußzeilen, > einige Plots, Tabellen und automatisch erzeugten Text enthält. > > Der Workflow sieht so aus: > - CSV-Datei parsen > - Messdaten nach verschiedenen Gesichtspunkten auswerten, dazu müssen > Filteralgorithmen und Statistik-Funktionen angewendet werden, teilweise > gibt es noch zusätzliche Berechnungen mit exp() und ln() - > wahrscheinlich ist eine sinnvolle Art der Zwischenspeicherung oder > Indizierung nötig > - Aufrufen von gnuplot, um Plots als PDF zu generieren > - Aufrufen von Latex, um die Plots zusammen mit zusätzlichen > Informationen schick aufzubereiten > > Welche Skriptsprache ist eurer Meinung nach am besten für so etwas > geeignet? All das dürfte jede mir bekannte Skriptsprache können, trotzdem schreit die Aufgabenstellung IMHO nach Python. Das ist besonders leicht erlern-, les-, wart- und veränderbar, trotzdem schon "im Grundzustand" äußerst performant (für eine Skriptsprache, versteht sich). Insbesondere in der wissenschaftlichen Datenanalyse und -Aufbereitung ist Python sehr beliebt, weil es durch kompilierte C-Module wie numpy, scipy und Pandas bis auf die Ebene von kompiliertem Maschinencode beschleunigt werden kann, ohne auf Klarheit, Komfort und Usability von Python verzichten zu müssen. Zur Not läßt sich Python mittels Boost::Python in C++ integrieren und umgekehrt, oder mit nuitka in kompilierbares C++ übersetzen. Obendrein bietet Python mit Matplotlib ein sehr leistungsfähige Bibliothek zur visuellen Aufbereitung der Daten an, der Preis hierfür ist jedoch eine gewisse Komplexität. Daher verwende ich Matplotlib, wenn es richtig gut aussehen soll, und Gnuplot eher für schnelle, einfache Hacks. Um Deinen LaTeX-Code zu schreiben, verfügt Python über eine eingebaute Template-Engine (string.Template), die allerdings weitgehend unbekannt ist, zudem stehen leistungsfähige Template-Frameworks wie Jinja2 zur Verfügung. Außerdem existiert ein Python-LaTeX-Framework namens Plastex, mit dem ich jedoch keine eigenen Erfahrungen habe -- YMMV. LaTeX kann übrigens selbst Diagramme aus Daten generieren, über die Optik, Performanz und Qualität dieses Feature weiß ich allerdings leider nichts. Für erste interaktive Analysen bietet sich im Übrigen auch noch iPython an, das ist eine interaktive Shell mit stark erweiterten Möglichkeiten.
Sheeva P. schrieb: > LaTeX kann übrigens selbst Diagramme aus Daten generieren, über die > Optik, Performanz und Qualität dieses Feature weiß ich allerdings leider > nichts. Dafür verwende ich pgfplots. Die ergebnisse sind exzellent, allerdings sollte man die Daten davor "mundgerecht" aufbereiten, sodass TeX nicht mit allzuvielen Datenpunkten hantieren muss.
Ich empfehle auch Python (numpy, scipy, matplotlib). Um einen schönen Report zu erstellen (pdf) würde ich dann allerdings "reportlab" verwenden.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.