Wer hat die erste Standardtabelle erstellt?

61

Ich bin dabei, die normale Standardtabelle in meiner Einführungsstatistikklasse einzuführen, und das hat mich gefragt: Wer hat die erste normale Standardtabelle erstellt? Wie haben sie es gemacht, bevor Computer kamen? Ich schaudere, wenn ich an jemanden denke, der tausend Riemann-Summen von Hand berechnet.

Daniel Smolkin
quelle
5
Schön zu sehen, dass jemand historisch informierten Unterricht haben möchte.
Mdewey

Antworten:

62

Laplace erkannte als erster die Notwendigkeit einer Tabellierung und kam auf die Annäherung:

G(x)=xet2dt(1)=1x12x3+134x51358x7+135716x9+

Die erste moderne Tabelle der Normalverteilung wurde später von dem französischen Astronomen Christian Kramp in Analyse der Reflexionen der Astronomie und des Territoriums erstellt . Aus Tabellen, die sich auf die Normalverteilung beziehen: Eine kurze Geschichte Autor (en): Herbert A. David Quelle: The American Statistician, Vol. 59, Nr. 4 (November 2005), S. 309-311 :

Ambitiously gab Kramp acht DECIMAL ( 8 D) Tabellen bis x=1.24, 9 D bis 1.50, 10 D bis 1.99, und 11 D bis 3.00 zusammen mit den für die Interpolation benötigt Unterschiede. Das Aufschreiben die ersten sechs Derivate von G(x), verwendet er einfach eine Taylor - Reihenentwicklung von G(x+h) über G(x), mit h=.01,bis zur Laufzeit in h3.Dies ermöglicht es ihm , nach Multiplikation von h schrittweise von x=0 zu x=h,2h,3h,, überzugehenhex2 mal

1hx+13(2x21)h216(2x33x)h3.
Somitreduziert sich dieses Produktbeix=0auf
.01(113×.0001)=.00999967,
so dass beiG(.01)=.88622692.00999967=.87622725.


Bildbeschreibung hier eingeben

Bildbeschreibung hier eingeben

Bildbeschreibung hier eingeben

Aber ... wie genau könnte er sein? OK, nehmen wir als Beispiel 2.97 :

Bildbeschreibung hier eingeben

Tolle!

Kommen wir zum modernen (normalisierten) Ausdruck des Gaußschen PDF:

N(0,1)

fX(X=x)=12πex22=12πe(x2)2=12πe(z)2

z=x2x=z×2

PZ(Z>z=2.97)eax1/ax2

Außerdem hat Christian Kramp nicht normalisiert, daher müssen wir die Ergebnisse von R entsprechend korrigieren und mit multiplizieren2π

2π2P(X>x)=πP(X>x)

z=2.97x=z×2=4.200214

(R = sqrt(pi) * pnorm(x, lower.tail = F))
[1] 0.00002363235e-05

Fantastisch!

0.06

z = 0.06
(x = z * sqrt(2))

(R = sqrt(pi) * pnorm(x, lower.tail = F))
[1] 0.8262988

0.82629882

So nah...


Die Sache ist ... wie nah genau? Nach all den positiven Stimmen konnte ich die eigentliche Antwort nicht hängen lassen. Das Problem war, dass alle Anwendungen zur optischen Zeichenerkennung (OCR), die ich ausprobiert habe, unglaublich deaktiviert waren - nicht überraschend, wenn Sie sich das Original angesehen haben. So lernte ich Christian Kramp für die Hartnäckigkeit seiner Arbeit zu schätzen, als ich persönlich jede Ziffer in die erste Spalte seiner Table Première eintippte .

Nach einiger wertvoller Hilfe von @Glen_b kann es nun sehr genau sein und es kann kopiert und in die R-Konsole in diesem GitHub-Link eingefügt werden .

Hier ist eine Analyse der Genauigkeit seiner Berechnungen. Mach dich bereit ...

  1. Absolute kumulative Differenz zwischen [R] -Werten und Kramps Näherung:

0.0000012007643011

  1. Mittlerer absoluter Fehler (MAE) odermean(abs(difference))mitdifference = R - kramp:

0.0000000039892493

Bei der Eingabe, bei der seine Berechnungen im Vergleich zu [R] am abweichendsten waren, befand sich der erste unterschiedliche Dezimalstellenwert auf der achten Position (Hundertmillionstel). Im Durchschnitt (Median) lag sein erster "Fehler" in der zehnten Dezimalstelle (zehntes Milliardstel!). Und obwohl er mit [R] in keinem Fall völlig einverstanden war, divergiert der nächste Eintrag erst mit dem dreizehn digitalen Eintrag.

  1. Mittlere relative Differenz oder mean(abs(R - kramp)) / mean(R)(identisch mit all.equal(R[,2], kramp[,2], tolerance = 0)):

0.00000002380406

  1. Root Mean Squared Error (RMSE) oder Abweichung (gibt größeren Fehlern mehr Gewicht), berechnet alssqrt(mean(difference^2)):

0.000000007283493


Wenn Sie ein Bild oder Porträt von Chistian Kramp finden, bearbeiten Sie diesen Beitrag und platzieren Sie ihn hier.

Antoni Parellada
quelle
4
Es ist schön, die zwei verschiedenen Referenzen zu haben, und ich denke, dass die zusätzlichen Details (wie die explizite Erweiterung, die Laplace für den oberen Schwanz gab) hier gut sind.
Glen_b
1
Dies ist mit der neuesten Bearbeitung noch besser, aber ich kann nicht zweimal upvoten - ausgezeichnetes Zeug. Beachten Sie, dass Davids Artikel erklärt, warum Kramps Tabelle nicht auf alle angezeigten Ziffern genau war (ein sehr kleiner Fehler im ersten Schritt wurde durchgespielt) - aber für die meisten statistischen Anwendungen immer noch mehr als genug
Glen_b
2
@ OlivierGrégoire Vielen Dank, dass Sie auf meine falsch geschriebene Dezimalstelle hingewiesen haben. Es ist jetzt korrigiert. Ich bin in einer Zeit aufgewachsen, in der Französisch ein Muss war, und bedeutete in keiner Weise eine Missachtung meines skurrilen Sprachgebrauchs (es gibt einen Hinweis darin, aber egal), den ich umgekehrt habe. Wie für "citoyen Kramp" - ein Versuch, historische Formen der Einführung in die Zeitung hervorzuheben.
Antoni Parellada
1
Hey, tut mir leid, dass du das für einen heftigen Kommentar hältst. Ich habe nur auf Dinge hingewiesen, ich sage in keiner Weise, dass Sie etwas missachten. Sie können natürlich Wortspiele machen oder übertreiben (oder sogar einen Hinweis geben). Aber als französischsprachiger Typ habe ich das nicht verstanden (zumindest versuchte ich das zu vermitteln). "Le citoyen Kramp" hatte kein Problem: Ich habe nur kopiert und zitiert, weil es kein Englisch war. Entschuldigung, wenn Sie der Meinung waren, dass es sich um einen heftigen Kommentar handelt, ist dies nicht der Fall. Meine Englischkenntnisse sind ebenfalls mangelhaft. ^^ Dein Vergleich wurde schön gemacht!
Olivier Grégoire
1
@ P.Windridge Entschuldigung ... Mir ist aufgefallen, dass ich einige defekte Hyperlinks hatte ...
Antoni Parellada
32

Laut HA David [1] erkannte Laplace die Notwendigkeit für Tabellen der Normalverteilung "bereits 1783" und die erste Normaltabelle wurde 1799 von Kramp hergestellt.

0xet212

Kramp verwendete diese Laplace-Serien jedoch nicht, da es eine Lücke in den Intervallen gab, für die sie sinnvoll angewendet werden konnten.

xG(x+h)G

Um genau zu sein, zitieren Sie die relevanten Satzpaare:

G(x+h)G(x)h=.01h3x=0x=h,2h,3h,...hex2

1hx+13(2x21)h216(2x33x)h3.
x=0
.01(113×.0001)=.00999967,(4)
G(.01)=.88622692.00999967=.87622725109

David gibt an, dass die Tabellen weit verbreitet waren.

Anstelle von Tausenden von Riemann-Summen waren es also Hunderte von Taylor-Erweiterungen.


Im Übrigen habe ich zur Not (nur mit einem Taschenrechner und ein paar gespeicherten Werten aus der normalen Tabelle) die Simpson-Regel (und verwandte Regeln für die numerische Integration) ziemlich erfolgreich angewendet, um eine gute Annäherung an andere Werte zu erhalten. es ist nicht alles , dass mühsam eine gekürzte Tabelle * auf ein paar Zahlen von Genauigkeit zu erzeugen. [Es wäre allerdings eine ziemlich große Aufgabe, Tabellen mit dem Maßstab und der Genauigkeit von Kramps zu erstellen, selbst wenn er eine schlauere Methode anwendet, als er.]

* Mit einer abgekürzten Tabelle meine ich eine, bei der Sie im Grunde mit der Interpolation zwischen tabellarischen Werten davonkommen können, ohne zu viel Genauigkeit zu verlieren. Wenn Sie nur etwa 3 Figur Genauigkeit sagen wollen Sie wirklich brauchen nicht zu berechnen alle , dass viele Werte. Ich habe effektiv die Polynominterpolation (genauer gesagt, angewandte Finite-Differenzen-Techniken) verwendet, die eine Tabelle mit weniger Werten als die lineare Interpolation ermöglicht - wenn auch mit etwas mehr Aufwand beim Interpolationsschritt - und auch eine Interpolation mit einer Logit-Transformation durchgeführt macht die lineare Interpolation wesentlich effektiver, nützt aber nur viel, wenn Sie einen guten Taschenrechner haben).

[1] Herbert A. David (2005),
"die Normalverteilung Verwandte Tabellen: Eine kurze Geschichte"
The American Statistician , Vol. 59, Nr. 4 (Nov.), S. 309-311

[2] Kramp (1799),
Analyse der Reflexionen Astronomiques et Terrestres,
Leipzig: Schwikkert

Glen_b
quelle
0

Interessantes Thema! Ich denke, die erste Idee ist nicht durch die Integration komplexer Formeln entstanden. vielmehr das Ergebnis der Anwendung der Asymptotika in der Kombinatorik. Die Stift- und Papiermethode kann mehrere Wochen dauern. Für Karl Gauß nicht so schwer im Vergleich zur Kuchenberechnung für seine Vorgänger. Ich denke, Gauß 'Idee war mutig; Berechnung war einfach für ihn.

Beispiel für die Erstellung einer Standard-Z-Tabelle von Grund auf:
1. Nehmen Sie eine Grundgesamtheit von n (n ist 20) Zahlen und listen Sie daraus alle möglichen Stichproben der Größe r (r ist 5) auf.
2. Berechnen Sie den Mittelwert der Stichprobe. Sie erhalten einen nCr-Mittelwert (hier bedeutet 20c5 = 15504).
3. Ihr Mittelwert entspricht dem Bevölkerungsmittelwert. Finden Sie den Standardwert der Probe.
4. Ermitteln Sie die z-Werte der Stichprobenmittelwerte mit dem Pop-Mittelwert und dem Standardwert der Stichprobenmittelwerte.
5. Sortieren Sie z in aufsteigender Reihenfolge und finden Sie die Wahrscheinlichkeit, dass z in einem Bereich Ihrer nCr z -Werte liegt.
6. Vergleichen Sie die Werte mit normalen Tabellen. Ein kleineres n ist gut für Handberechnungen. Ein größeres n führt näher an die normalen Tabellenwerte heran.

Der folgende Code ist in r:

n <- 20  
r <- 5  

p <- sample(1:40,n)  # Don't be misled!! Here, 'sample' is an r function  
                     used to produce n random numbers between 1 and 40.  
                     You can take any 20 numbers, possibly all different.  

c <- combn(p, r)     # all the nCr samples listed  
cmean <- array(0)  

for(i in 1:choose(n,r)) {  
    cmean[i] <- mean(c[,i])  
                }  

z <- array(0)  
for(i in 1:choose(n,r)) {  
    z[i] <- (cmean[i]-mean(c))/sd(cmean)  
                }  

ascend <- sort(z, decreasing = FALSE)  

Wahrscheinlichkeit, dass z zwischen 0 und einem positiven Wert q darunter liegt; Vergleiche mit einer bekannten Tabelle. Manipuliere q unten zwischen 0 und 3,5, um zu vergleichen.

q <- 1  
probability <- (length(ascend[ascend<q])-length(ascend[ascend<0]))/choose(n,r)   
probability   # For example, if you use n=30 and r=5, then for q=1, you  
              will get probability is 0.3413; for q=2, prob is 0.4773
Md Towhidul Islam
quelle
3
Ich verstehe nicht, wie Sampling auf diese Weise zum Generieren der Tabellen verwendet werden kann. Ich glaube, die OP wollte nur wissen, wer die erste Person war
Michael Chernick
Vielen Dank für Ihren wertvollen Kommentar Michael Chernick. 1) Das OP schreibt: "Wie haben sie es gemacht, bevor Computer hinzukamen? Ich schaudere, wenn ich an jemanden denke, der mit brachialer Gewalt tausend Riemann-Summen von Hand berechnet." Ich habe versucht, diesen Teil zu beantworten. 2) Der Begriff 'Stichprobe' ist an sich keine Stichprobe, sondern eine Funktion zum Erzeugen einer Liste von Zufallszahlen. Wir können stattdessen auch 20 beliebige Zahlen nehmen. Siehe den unterstützenden Link hier stackoverflow.com/questions/17773080/…
Md Towhidul Islam