Berechnen Sie den Bereich zwischen zwei Kurven (das sind normale Verteilungen)

Ich muss die Fläche zwischen zwei Kurven berechnen. Ich habe viele Daten, also würde ich es gern programmgesteuert machen.

Grundsätzlich habe ich immer 2 normale Verteilungen, berechnet aus einem Mittelwert und Standardabweichung. Ich würde dann gerne berechnen, wie viel sie sich schneiden. Hier ist ein Beispiel dafür, was ich meine, und auch ein Code in R (das weiß ich nicht).

Gibt es schon eine Funktion in matplotlib oder scipy oder irgendein anderes Modul, das es für mich macht? Wenn ich es selbst umsetzen muss, denke ich, dass ich tun sollte:

  • Finde die Kreuzungen (es wird max 2)
  • Sehen Sie, welche Funktion vorher niedriger ist, [zwischen] und nach der Kreuzung
  • Berechnen Sie das Integral der unteren Funktion und fügen Sie alle zusammen hinzu

Ist das richtig? Wie kann ich die einzelnen Schritte machen? Gibt es Funktionen, Module, etc., die helfen können?

  • Markiere in Latex in Matplotlib
  • Wie macht man X-Achse in Matplotlib / Pylab, um NICHT automatisch die Werte zu sortieren?
  • Wie können Sie ein Matplotlib-Textfeld löschen, das zuvor gezeichnet wurde?
  • Python Tkinter integriert Matplotlib in GUI
  • Python / Matplotlib - Einstellen des Abstandes zwischen dem Rand des Plots und der x-Achse
  • Versuche, potenzielle Feldnavigation in Matplotlib zu implementieren
  • One Solution collect form web for “Berechnen Sie den Bereich zwischen zwei Kurven (das sind normale Verteilungen)”

    Ich weiß auch nicht R, aber die Antwort scheint in dem Link zu sein, den du zur Verfügung stellst: einfach das Minimum deiner Distributionen integrieren. Sie brauchen keine Kreuzungen zu finden, scipy.integrate.quad nur min(f(x), g(x)) zu scipy.integrate.quad .

    Python ist die beste Programmiersprache der Welt.