regression und curve-fitting (3d)

mit matplotlib, NumPy, pandas, SciPy, SymPy und weiteren mathematischen Programmbibliotheken.
Antworten
zweihorn
User
Beiträge: 27
Registriert: Donnerstag 11. Mai 2017, 17:09

Mittwoch 25. Oktober 2017, 09:16

Hallo!

Kennt hier jemand ein Buch oder eine sonstige Quelle, in der die Thematik von Regressionen und Fitting von Daten im dreidimensionalen mit Python durchexerziert wird?

Ich habe schon eine ganze Menge an Möglichkeiten, Funktionen und Code-Schnipseln gefunden. Allerdings fällt es mir schwer, daraus die "richtige" bzw. optimale Herangehensweise herauszufischen. Oftmals werden Funktionen genutzt, die zwar den Zweck erfüllen aber auch über Schwächen verfügen, auf die dann nicht eingegangen wird.

Konkret geht es darum, eine 3d-Punktwolke entweder mit einer Regression-Fläche (muss keine Ebene sein) zu approximieren oder eine 3D-Punktwolke zu fitten. Teilweise auch beides.

Bin für jeden Tipp dankbar!

zweihorn
__deets__
User
Beiträge: 3111
Registriert: Mittwoch 14. Oktober 2015, 14:29

Mittwoch 25. Oktober 2017, 09:41

Ich behaupte das du das von Python lösen solltest. Das sind ja allgemeine Techniken. Wenn du dafür gute mathematische Verfahren findest (und ihre Probleme und Anforderungen), dann solltest du nach Python Implementierungen suchen.
zweihorn
User
Beiträge: 27
Registriert: Donnerstag 11. Mai 2017, 17:09

Mittwoch 25. Oktober 2017, 10:04

ja, da hast du prinzipiell recht. Allerdings suche ich nach Literatur, welche genau diesen Zwischenschritt:
... dann solltest du nach Python Implementierungen suchen
macht. Also für gängige Methoden die Anwendung in Python vorstellt und Empfehlungen (Pakete, Funktionen, etc.) gibt.
Benutzeravatar
MagBen
User
Beiträge: 774
Registriert: Freitag 6. Juni 2014, 05:56
Wohnort: Bremen
Kontaktdaten:

Mittwoch 25. Oktober 2017, 12:24

zweihorn hat geschrieben:Konkret geht es darum, eine 3d-Punktwolke entweder mit einer Regression-Fläche (muss keine Ebene sein) zu approximieren
Das läuft auf das Lösen eines überbestimmten Gleichungssystems hinaus.
Vorgehen:
  1. Mathematik: überbestimmtes Gleichungssystem aufstellen
  2. Python/Numpy: Matrix A des Gleichungssystems erstellen.
  3. Python/Numpy: A^T * A mit berechnen und zusammen mit einer geeigneten "rechten Seite" an die Numpy-Funktion solve übergeben
a fool with a tool is still a fool, www.magben.de, YouTube
Benutzeravatar
noisefloor
User
Beiträge: 2427
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: Görgeshausen
Kontaktdaten:

Donnerstag 26. Oktober 2017, 13:23

Hallo,

es gibt zumindest kein mir bekanntest Buch dazu. Das Thema ist ja auch schon etwas spezieller / forgeschrittener, die meisten (mir bekannten) Bücher sind eher so Einsteigerlevel in Wissenschaftliches Rechnen.

Was IMHO Erfolgt haben sollte ist, wenn du einen Thread bei StackOverflow eröffnest. Beschreibe deine Daten und dein Anliegen möglichst genau, beschreibe, welche Lösungen (mit welchen Nachteilen) du hast und ich bin mir sicher, du wirst brauchbare Antworten bekommen.

Gruß, noisefloor
zweihorn
User
Beiträge: 27
Registriert: Donnerstag 11. Mai 2017, 17:09

Samstag 28. Oktober 2017, 11:18

sorry für die späte Rückmeldung!

Stackoverflow ist natürlich ein probates Mittel :)

Eben weil die meisten Bücher hauptsächlich Grundlagen behandeln, dachte ich frage mal nach. Aber da es anscheinend nichts gibt, muss es halt weiterhin auf die herkömmliche Weise gehen: google^^

Trotzdem Danke!
Antworten