WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

T-test: Ergebnis/speichern der einzelnen Testparameter

 

G

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.01.2011, 19:57     Titel: T-test: Ergebnis/speichern der einzelnen Testparameter
  Antworten mit Zitat      
Hallo zusammen,
ich habe ein wahrscheinlich total simples Problem, aber ich kämpfe schon seit Stunden damit.
Ich habe z.B eine 100x4 Matrix erzeugt über
Code:

z = normrnd(0.1,1,1,100);
Z=[z' z'*2 z'*0.5 z'*0.3];
 


Nun würde ich gerne die Hyposthese testen, dass der Mittelwert=0ist und dafür folgende einfache Schleife laufen lassen und die Zwischenergebnisse speichern
Code:

%definiere Output
t=nan(1,4); %nan statt zeros, um 0 als Ergebnis zu erkennen
p=nan(1,4);
h=nan(1,4);
%ttest
for i=1:4
[h,p,ci,stats] = ttest(Z(:,i));
h(i)=h;
t(i)=stats.tstat;
p(i)=p;
end
 



Was mich nun verwirrt: t(i) ist für alle vier Reihen gleich (hätte ich auch erwartet und bekomme ich auch raus, wenn ich den t-Wert händisch bestimme), h ist in allen 4 Fällen Null, was auch Sinn macht - aber bei den p-Werten erhalte ich an Position 1 und 4 eine Zahl, die gleich ist und an Position 2 und 3 jeweils eine 0.

Wenn ich stattdessen foglenden Code laufen lasse
Code:

z = normrnd(0.1,1,1,100);
Z=[z' z'*2 z'*0.5 z'*0.3];
for i=1:4
[h,p,ci,stats] = ttest(Z(:,i))
end
 



bekomme ich für alle p-Werte den gleichen Wert, wie ich es erwartet hätte.

Habt ihr eine Erklärung bzw. speichere ich die Werte irgendwie falsch?

Danke

G


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 04.01.2011, 20:17     Titel:
  Antworten mit Zitat      
Hallo,

das Problem ist, dass du p sowohl zum Speichern deiner temporären Ergebnisse als auch zum Speichern des Ergebnisvektors verwendest.
So sollte es gehen:

Code:
[h,ptemp,ci,stats] = ttest(Z(:,i));
h(i)=h;
t(i)=stats.tstat;
p(i)=ptemp;


Grüße,
Harald

P.S.: mit dem T-Test an sich hat das gar nix zu tun.
Private Nachricht senden Benutzer-Profile anzeigen
 
G

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.01.2011, 20:31     Titel: Danke
  Antworten mit Zitat      
Hallo Harald,

Danke für die Antwort, das hat mir sehr geholfen, denn jetzt geht es.

VG

G
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.