AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

t-Test Verteilungsfunktion

Ein Thema von hoika · begonnen am 7. Jul 2010 · letzter Beitrag vom 8. Jul 2010
Antwort Antwort
Seite 1 von 2  1 2      
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#1

t-Test Verteilungsfunktion

  Alt 7. Jul 2010, 11:14
Hallo,

Sicher kennt ihr alle den t-Test (Student-Test).

Der berechnete t-Wert wird mit einem Wert aus Tabellen verglichen

T(FG,alpha)

FG - Freiheitsgrade
alpha - Signifikanz-Niveau


Nur habe ich auf meinem Rechner gerade keine Tabelle ...

Gibt es vielleicht fertigen Delphi-Code für die Berechnung ???

Noch mal: Den t-Test habe ich.

Ich suche jetzt nach der Funktion, die z.B. bei

T(20, 0.05) den Wert 1.725 ausspuckt.


Danke



Heiko
Heiko
  Mit Zitat antworten Zitat
blackfin
(Gast)

n/a Beiträge
 
#2

AW: t-Test Verteilungsfunktion

  Alt 7. Jul 2010, 11:20
Hilft diese Seite vielleicht?:

http://www.statsoft.com/textbook/distribution-tables/
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: t-Test Verteilungsfunktion

  Alt 7. Jul 2010, 13:38
Hallo,

hm, sag mir mal mit dem Link den T-Wert für df=50 ?

ich möchte keine Tabelle, sondern eine Funktion,
die ich in Delphi aufrufen kann.

Im Moment hämmere ich die verfügbaren Werte in eine Liste
und interpoliere fehlende Werte lineal.


Heiko
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#4

AW: t-Test Verteilungsfunktion

  Alt 7. Jul 2010, 14:40
Vergiss es.

Ich kenne diesen test zwar nicht. Aber auf Wikipedia ( http://en.wikipedia.org/wiki/Student...nsity_function ) steht dass die Funktion die du suchst (welche von beiden weiß ich jetzt nicht) entweder auf die Gamma-Funktion oder auf die Beta-Funktion führt. Beide sind nicht analytisch definiert, sondern über ein konvergentes Integral

Sowas ähnliches gibt's doch auch bei der Normalverteilung, die Glockenkurve lässt sich ja auch nicht analytisch integrieren.

=> Die einzige Möglichkeit, diese Funktion einigermaßen hinzubekommen ist eine möglichst gute wertetabelle und ein guter interpolationsalgo. Hier könntest du noch über eine kubische (statt einer linearen) interpolation nachdenken.
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: t-Test Verteilungsfunktion

  Alt 7. Jul 2010, 15:40
Hallo,

ja, ich habe die Funktion schon gesehen, Schock ...
Und die ermittelt die Wahrscheinlichkeit bei gegebenem Alpha,
also das genaue Gegenteil.

Ich habe jetzt alle gefundenen Werte in einer Liste,
die Zwischenwerte werden per linearer Interpolation ermittelt.
Das reicht mir.

Ausserdem reicht es mir selber
Sitze schon seit heute früh halb 8 damit rum.

Danke


Heiko
Heiko
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.679 Beiträge
 
Delphi 2007 Enterprise
 
#6

AW: t-Test Verteilungsfunktion

  Alt 7. Jul 2010, 15:46
Rate mal, warum man zur heutigen Zeit bei den diversen Verteilungen noch immer mit Tabellen anrückt. Es gibt keine explizite Formel . Die meisten Tabellen sind in langwierigen Prozessen entstanden, die in der Regel näherungsweises Lösen recht komplexer Systeme, oder gar Monte-Carlo Simulationen beinhalten.
Tabelle + Interpolation ist der derzeit einzig sinnvolle Weg, wenn man sich nicht den Luxus erlauben kann für einen Wert ein paar Minütchen rumzurechnen, wobei im Allgemeinen nichtmal wirklich bessere Genauigkeit garantiert ist. (Es sei denn man gönnt sich dazu noch den größeren Luxus von >80Bit Floats via Software.)

Edit: Aha, roter Kasten ist also immer noch launisch . Gut, dann ist das ja zufriedenstellend durch, plima
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
wp_xxyyzz

Registriert seit: 2. Okt 2006
23 Beiträge
 
#7

AW: t-Test Verteilungsfunktion

  Alt 7. Jul 2010, 17:09
Es gab mal eine Online-Ausgabe des Buchs "Numerical Recipes in C" von Press und Flannery, dort findet man C-Code zum t-Test. Oder suche dir in der Bibliothek "Numerical Recipes in Pascal" mit den entsprechenden Pascal-Routinen zum Abtippen.

Viel Spaß
Werner
  Mit Zitat antworten Zitat
gammatester

Registriert seit: 6. Dez 2005
999 Beiträge
 
#8

AW: t-Test Verteilungsfunktion

  Alt 7. Jul 2010, 17:22
Rate mal, warum man zur heutigen Zeit bei den diversen Verteilungen noch immer mit Tabellen anrückt. Es gibt keine explizite Formel . Die meisten Tabellen sind in langwierigen Prozessen entstanden, die in der Regel näherungsweises Lösen recht komplexer Systeme, oder gar Monte-Carlo Simulationen beinhalten.
Tabelle + Interpolation ist der derzeit einzig sinnvolle Weg, wenn man sich nicht den Luxus erlauben kann für einen Wert ein paar Minütchen rumzurechnen, wobei im Allgemeinen nichtmal wirklich bessere Genauigkeit garantiert ist. (Es sei denn man gönnt sich dazu noch den größeren Luxus von >80Bit Floats via Software.)
Das ist doch wohl ziemlicher Unsinn! Diese Funktionen sind schon seit Jahrzehnten auf Computern verfügbar. Nur weil Delphi mit seiner grauenhaften Math-Unit das nicht kann, werden doch keine Tabellen ausgewürfelt. Wenn des Delphi-Programmiers eigene mathematisch-statistischen Fähigkeiten nicht ausreichen, die angegebenen Funktion zu berechnen,
sollte er geeignete Bibliotheken werden, z.B.

TPMath 0.75 <http://sourceforge.net/projects/tpmath/>

oder

Alglib 2.60 <http://www.alglib.net/>

[Sorry für die schlechte Formatierung, aber die neuen Forensoftware ist halt mit Modem ohne
Images im Gegensatz zur alten nicht sonderlich brauchbar.]

Geändert von gammatester ( 7. Jul 2010 um 17:24 Uhr)
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.679 Beiträge
 
Delphi 2007 Enterprise
 
#9

AW: t-Test Verteilungsfunktion

  Alt 7. Jul 2010, 19:18
Ich habe nie behauptet, dass es unmöglich wäre das ohne Tabellen zu machen. Ich habe lediglich die Praktikabilität, insbesondere bei häufiger Anwendung, in Frage gestellt. Erkläre mir, wo das Unsinn ist.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
gammatester

Registriert seit: 6. Dez 2005
999 Beiträge
 
#10

AW: t-Test Verteilungsfunktion

  Alt 7. Jul 2010, 21:31
Ich habe nie behauptet, dass es unmöglich wäre das ohne Tabellen zu machen. Ich habe lediglich die Praktikabilität, insbesondere bei häufiger Anwendung, in Frage gestellt. Erkläre mir, wo das Unsinn ist.
Hier Zitate aus Deinem vorherigem Beitrafg:
Zitat:
Es gibt keine explizite Formel.
Unsinn, solch ein Unsinn, daß kein weiterer Kommentar notwendig ist.

Jedem Standardtest liegt eine Dichtefunktion und eine Verteilungsfunktion zugrunde. Die Tests beruhen auf mathematisch-statistischen Modellen, die Funktionen sind bekannt, wenn es auch in vielen Fällen keine elementaren transzendenten Funktionen sind.
Zitat:
Die meisten Tabellen sind in langwierigen Prozessen entstanden,
Früher im 17. Jahrhundert wurden Logarithmentabellen und Sinustabellen auch so berechnet, was aber doch wohl kein Grund ist, das heute immer noch so zu machen.
Zitat:
Tabelle + Interpolation ist der derzeit einzig sinnvolle Weg, wenn man sich nicht den Luxus erlauben kann für einen Wert ein paar Minütchen rumzurechnen
Auch das is mM Unsinn, denn die Implementation möchte ich sehen, die ein paar Minütchen rechnet. Wenn Du dafür was bezahlt hast, solltest Du Dein Geld zurückverlangen. GNU Octave rechnet zB das obige T(20, 0.05) in gefühlten 0 bis 10 ms aus
Code:
OCTAVE:1> format long
OCTAVE:2> t_inv(1-0.05,20)
ans = 1.72471824292079
Zitat:
wobei im Allgemeinen nichtmal wirklich bessere Genauigkeit garantiert ist.
Unsinn, zeig mir Tabellen mit Interpolationsanleitung, die eine 10stellige Genauigkeit ergeben. Wenn die Funktionen sauber implementiert sind, kann man schon bei double und selbst bei extremen Werte relative Fehler von ca 1e-12 erwarten. ZB die nicht sonderlich genaue cephes-double Routine:
Code:
/*                                                      stdtri.c
 * Functional inverse of Student's t distribution
 *
 * SYNOPSIS:
 *
 * double p, t, stdtri();
 * int k;
 *
 * t = stdtri( k, p );
 *
 *
 * DESCRIPTION:
 *
 * Given probability p, finds the argument t such that stdtr(k,t)
 * is equal to p.
 *
 * ACCURACY:
 *
 * Tested at random 1 <= k <= 100. The "domain" refers to p:
 *                      Relative error:
 * arithmetic  domain    # trials     peak        rms
 *    IEEE   .001,.999     25000       5.7e-15     8.0e-16
 *    IEEE   10^-6,.001    25000       2.0e-12     2.9e-14
 */
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:31 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz