Parameter mit SciPy curve_fit() automatisch optimieren
Die SciPy-Funktion curve_fit() findet die besten Parameter automatisch. Das erspart das Ausprobieren, wenn eine Funktion mit Daten modelliert werden soll.
Meine Personenwaage "misst" über Elektroden meinen Körperfettanteil. Der angezeigte Wert schwankt um mehr als 100 Prozent, je nachdem, wie nass meine Füße sind. Um mal zu besseren Werten zu kommen, habe ich mir einen sogenannten "Caliper" gekauft. Das ist eine Zange, mit der man mit einem Druck von genau 10 Gramm pro Quadratmillimeter Auflagefläche (meine klemmt 6,4 × 7,3 Millimeter ein) die Dicke von Speckfalten misst.
Ich messe damit eine Falte seitlich am Bauch. Die Methode ist erheblich genauer und den Caliper bekam ich für sieben Euro. Bei der Zange lag ein Zettel mit zwei Tabellen bei: eine für Männer und eine für Frauen. In der Tabelle schaut man abhängig vom eigenen Alter nach, welcher Körperfettanteil in Prozent zu dem in Millimeter gemessenen Maß gehört.
Für die Zange hatte ich schnell einen guten Platz gefunden, aber der Zettel mit den Tabellen flog wochenlang auf meinem Schreibtisch rum. Eigentlich wollte ich die Messwerte ohnehin digital archivieren und es nervte mich, dass ich dafür auf eine Tabelle auf einem Stück Papier schauen musste. Es gibt zwar Formeln für drei oder mehr Messwerte an verschiedenen Körperstellen, für nur einen Wert hatte ich aber nur die Tabelle. Die einfach zu digitalisieren wäre mir aber zu simpel gewesen. Ich wollte eine Formel finden, um alle Tabellenwerte (und Werte dazwischen auch) berechnen zu können.
Immer mehr Wissen. Das digitale Abo für IT und Technik.
Nur bis zum 31. Mai: heise+ 1 Jahr für nur 1,90 pro Woche lesen. Unbegrenzter Zugriff auf alle heise+ Artikel inklusive allen Digital-Magazinen.Länger lesen, mehr sparen: heise+ 1 Jahr lang für nur 1,90 € pro Woche lesen und brandaktuelles IT- und Tech-Wissen sichern. Zugriff auf alle heise+ Artikel inklusive der Digital-Magazine. Nur bis zum 31. Mai!