Wenn derselbe Code auf einem und nicht auf dem anderen funktioniert, ist die Version von Matlab, die Sie für einen verwenden, wählerischer als für einen anderen. Haben Sie überprüft, dass es sich bei beiden Geräten um dieselbe Matlab-Version handelt? Meine Vermutung ist, dass sie anders sind.
Egal, etwas zu versuchen:
Es scheint mir, als würde eine Matlab-Version die Ausgabe als randn als eine Reihe von an ttest übergebenen Argumenten behandeln, nicht als einen Vektor, der Ihre Zufallsstichprobe enthält.
Nur um das Debuggen zu erleichtern, würde ich Folgendes verwenden:
x=randn(100,1) [h,p,ci]=ttest(x,0.1)
Haben Sie versucht x=randn([100,1])
? Obwohl ich nicht erwarten würde, dass dies eine Rolle spielt ...
Ist es möglich, dass 0,1 als Mittelwert für das Set nicht sinnvoll ist? Ein Blick auf x könnte helfen. Meine Vermutung ist, dass dies bei beiden funktionieren wird, vorausgesetzt, Sie möchten, dass der Mittelwert = 0,1 ist:
% Generate values from a normal distribution with mean 0.1 % and standard deviation 0.5 x=0.1 + 0.5*randn(100,1) [h,p,ci]=ttest(x)