Ergebnis 1 bis 1 von 1

Thema: (Gaußsche) Normalverteilung, wie Funktion NORMINV aus Excel

  1. #1
    Kaiser(in)
    Registriert seit
    09.12.2005
    Alter
    29
    Beiträge
    2.496
    Danke
    1
    Bekam 0 mal "Danke" in 0 Postings

    Standard (Gaußsche) Normalverteilung, wie Funktion NORMINV aus Excel

    Hallo alle miteinander

    Ich habe ein Problemchen, das meine mathematischen Fähigkeiten anscheinend übersteigt, und möchte euch gerne um Rat bitten.

    Eine größere Kalkulation soll erweitert werden und aus Excel in ein eigenständiges Programm in vb.net geschrieben werden.
    Dafür benötige ich eine Funktion, welche mir das gleiche Ergebnis liefert, wie NORMINV in Excel es würde.

    Ich habe folgende Ausgangswerte:
    Ertrag aus Gutachten: 15.217.383
    Standardabweichung: 228.260,745
    Wahrscheinlichkeit: 75% -> 0,25
    Gesucht: neuer Ertragswert (Normalverteilt)

    In Excel gibt es nun die Funktion NORMINV(Wahrsch.;Mittelwert;Standardabweichung) welche mir "Quantile der Normalverteilung" zurückgibt.
    So liefert mir die Funktion NORMINV(0,25;15217383;228260,745) das Ergebnis 15.063.423,50

    Kann mir dort jemand unter die Arme greifen und mir mit vb.net-code oder pseudo-code behilflich sein ?
    Viele Dank & mfg

    EDIT: hier die Lösung dank langem googlen:

    Code:
        Function NormInv(ByVal Probability As Double, ByVal Mu As Double, ByVal _
          Sigma As Double)
     
            Dim x As Double        Dim p As Double
            Dim c0 As Double, c1 As Double, c2 As Double
            Dim d1 As Double, d2 As Double, d3 As Double
            Dim t As Double
            Dim q As Double
            q = Probability
            If (q = 0.5) Then
                NormInv = Mu
            Else
                q = 1.0# - q
     
                If ((q > 0) And (q < 0.5)) Then
                    p = q
                Else
                    If (q = 1) Then
                        p = 1 - 0.9999999 ' JPR - attempt to fix divide by zero 
                        ' below, what is NormInv(1,x,y)?
                    Else
                        p = 1.0# - q
                    End If
                End If
     
                t = Sqrt(Log(1.0# / (p * p)))
     
                c0 = 2.515517
                c1 = 0.802853
                c2 = 0.010328
     
                d1 = 1.432788
                d2 = 0.189269
                d3 = 0.001308
     
                x = t - (c0 + c1 * t + c2 * (t * t)) / (1.0# + d1 * t + d2 * (t * _
                  t) + d3 * (t ^ 3))
                If (q > 0.5) Then
                    x = -1.0# * x
                End If
            End If
            NormInv = (x * Sigma) + Mu
        End Function
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!
    Geändert von BendOr (14.04.2010 um 22:54 Uhr) Grund: gelöst!
    Sei immer du selbst. Außer du kannst Batman sein. Sei immer Batman!

Ähnliche Themen

  1. Excel
    Von Jar Jar Binks im Forum Computer - Internet Forum
    Antworten: 2
    Letzter Beitrag: 12.02.2008, 15:34
  2. Suche eine Funktion wie bei VBA die Controls Funktion
    Von OJMD im Forum Forum für alle anderen Programmiersprachen
    Antworten: 2
    Letzter Beitrag: 28.06.2007, 09:08
  3. Wert aus JS-Funktion an PHP-Funktion übergeben
    Von Agnes im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 17
    Letzter Beitrag: 18.05.2007, 22:53
  4. Excel pt ?
    Von Mr.Death im Forum Computer - Internet Forum
    Antworten: 6
    Letzter Beitrag: 29.03.2006, 22:16
  5. Excel Funktionen
    Von Mr.Death im Forum Computer - Internet Forum
    Antworten: 6
    Letzter Beitrag: 28.03.2006, 20:12

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •