PDA

View Full Version : [FRAGE] - Bsp. 2.3


kenokb
16-04-2006, 17:28
Ich habe eine Frage zu diesem Bsp.

Aslo die Angabe war ja: wir sollen 100 Mengen mit jeweils 5/30/100/500 Zahlen bilden die einer Normalverteilung mit Mittelwert=4 und varianz=3 genügen sollen.

Ich verstehe nicht was mit 100 Mengen mit jeweils 5/30/100/500 Zahlen gemeint ist.

Habt Ihr da einen Vorschlag?

buschti
17-04-2006, 12:20
Ich versuch's mal:

Du hast jeweils 100 Stichproben, wobei die Stichprobengröße variiert (5/30/100/500). Bei 100 Stichproben a 5 Zahlen hast du also eine Matrix mit 100 Zeilen und 5 Spalten. Der geschätzte Mittelwert und die geschätzte Varianz einer Stichprobe ergibt sich dann aus den 5 Werten einer Zeile.
Bei jeder Stichprobengröße bekommst du 100 geschätzte Mittelwerte und 100 geschätzte Varianzen.

lg
Sebastian (EFME-Tutor)

Sandybanks
19-04-2006, 17:07
bei mir funktioniert die fkt mean() nicht. matlab sagt immer
??? Subscript indices must either be real positive integers or logicals.
bei var() funktionert es wenn ich einfach die generierten matrizen reinstecke.

habt ihr vorschläge????

danke!!!

buschti
20-04-2006, 11:31
bei mir funktioniert die fkt mean() nicht. matlab sagt immer
??? Subscript indices must either be real positive integers or logicals.
bei var() funktionert es wenn ich einfach die generierten matrizen reinstecke.


Eigentlich bedeutet die Fehlermeldung (klarerweise), daß die angegebenen Indizes einer Matrix keine ganze positive Zahl sind. Wie schaut den die Codezeile aus, die diese Fehlermeldung verursacht?

lg
Sebastian (EFME-Tutor)

Sandybanks
20-04-2006, 11:47
ich ruf ganz normal die fkt mean() auf und übergebe ihr dabei eine matrix. in der doku heisst es, dass wenn eine matrix übergeben wird, dass dann mean() ein array (oder halt eindimensionale matrix, oder vektor oder oder...) mit den jeweiligen mean-werten über alle spalten zurückgibt.
die matrix als parameter stammt von der erzeugung laut angabe.

buschti
20-04-2006, 13:58
Kann es sein, daß Du im workspace eine Matrix hast, die den Namen mean trägt? Das könnte der Grund sein.

Sandybanks
20-04-2006, 14:08
an dem liegts leider nicht

R2D2
20-04-2006, 15:18
wenn ich mich nicht irre musst du für eine matrix mean2() verwenden...
kann das sein?

buschti
20-04-2006, 15:26
Also wenn's bei var() funktioniert und bei mean() nicht und du keine variable namens mean hast, kann es fast nur noch an der mean()-funktion selber liegen (vielleicht lokal eine andere/eigene?). Funktioniert die überhaupt generell? Kommt z.b. bei

mean([1 2]);

1.5 raus?

Sandybanks
20-04-2006, 15:55
also bei mean2() kommt der erwartungswert über die gesamte matrix raus
mean([1 2]) ergibt folgendes:
??? Index exceeds matrix dimensions.

Error in ==> abgabe2aufgabe3 at 26
mean([1 2])

aber wie kann das sein dass die fkt einfach nicht funktioniert???

Sandybanks
20-04-2006, 16:01
ich hab jetzt mean() durch MEDIAN() ersetzt und es scheint zu funktionieren.

wenn ihr mir jetzt noch schnell sagen könntet wie man mehrere histogramme auf einmal zeigen kann?
ich hab ja je sample ein histogramm für die varianz und eines für den median. kann man da alle zusammen anzeigen lassen?
danke!!!

R2D2
20-04-2006, 16:07
ich hab jetzt mean() durch MEDIAN() ersetzt und es scheint zu funktionieren.

wenn ihr mir jetzt noch schnell sagen könntet wie man mehrere histogramme auf einmal zeigen kann?
ich hab ja je sample ein histogramm für die varianz und eines für den median. kann man da alle zusammen anzeigen lassen?
danke!!!
nur dass mean der mittelwert und median halt der median is.
das sind 2 verschiedene dinge!
mean liefert den mittelwert(also das arithmetische mittel) und median einfach den wert in der mitte.
kommt halt drauf an, was du brauchst.

die histogramme kannst du einfach in ein subplot tun.

buschti
20-04-2006, 16:10
Tschuldige bitte, daß ich nochmal fragen muß, aber bist du dir wirklich ganz, ganz sicher, daß du keine Variable mean irgendwo definierst? (vielleicht einmal mit "clear all" den workspace clearen)
Wenn ich nämlich folgendes ausprobiere:

mean= 1;
mean([1 2]);

kommt nämlich genau die Fehlermeldung, die du auch bekommst (??? Index exceeds matrix dimensions).

Zur Median-Funktion: Man sollte schon den Mittelwert und nicht den Median berechnen, die Funktion hilft dir also leider auch nicht weiter.

R2D2
20-04-2006, 16:13
also bei mean2() kommt der erwartungswert über die gesamte matrix raus
mean([1 2]) ergibt folgendes:
??? Index exceeds matrix dimensions.

Error in ==> abgabe2aufgabe3 at 26
mean([1 2])

aber wie kann das sein dass die fkt einfach nicht funktioniert???
also bei mir funzt es:
>> mean([1 2])

ans =

1.5000

hmm... hast du vielleicht "irgendwas=mean([1 2])" eingegeben?
weil dann könnt ich mir vorstellen dass die variable "irgendwas" einfach nicht die selbe größe hat wie das ergebnis, dass du durch mean([1 2]) bekommst.

buschti
20-04-2006, 16:18
also bei mir funzt es:
>> mean([1 2])

ans =

1.5000

hmm... hast du vielleicht "irgendwas=mean([1 2])" eingegeben?
weil dann könnt ich mir vorstellen dass die variable "irgendwas" einfach nicht die selbe größe hat wie das ergebnis, dass du durch mean([1 2]) bekommst.

Das kann nicht sein, Matlab würde die Variable irgendwas einfach ersetzen, egal, welche Größe sie vorher hatte.

R2D2
20-04-2006, 16:25
ok, stimmt.

Sandybanks
20-04-2006, 16:54
das mit dem clear all hat geholfen. jetzt geht mean()
ich hab mal wo anders so eine variable gehabt. is das aber deppad.

wie funzt das mit dem subplot? hab ich zwar schon gehört, aber noch nicht hinbekommen.
2mal untereinander hist() gibt ja nur ein histogramm aus.

buschti
20-04-2006, 17:35
das mit dem clear all hat geholfen. jetzt geht mean()
ich hab mal wo anders so eine variable gehabt. is das aber deppad.

Hab's doch gewußt *g*


wie funzt das mit dem subplot? hab ich zwar schon gehört, aber noch nicht hinbekommen.
2mal untereinander hist() gibt ja nur ein histogramm aus.

einfach "help subplot" eingeben, ist wirklich nicht kompliziert.

Swoncen
12-04-2007, 20:03
Man muss der normrnd Funktion statt 3 als Varianz sqrt(3) übergeben, stimmts?

Swoncen
12-04-2007, 20:08
Noch eine kurze Frage: Ich hab jetzt die Histogramme so gemacht:


subplot(2,2,1); hist(histo1_mean,100);
subplot(2,2,2); hist(histo2_mean,100);
subplot(2,2,3); hist(histo3_mean,100);
subplot(2,2,4); hist(histo4_mean,100);


Wie kann ich bei subplots die x und y Achse beschränken, z.b.: von 0 bis 5? Ohne dem sieht man nicht, was sich entscheidend ändert. Bei normalen plots weiß ichs, bei subplots hab ichs noch nicht hinbekommen.

Swoncen
12-04-2007, 21:22
Ok ich glaub in Verbindung mit der Funktion hist ist das ein Ding der Unmöglichkeit.

buschti
13-04-2007, 11:10
Man muss der normrnd Funktion statt 3 als Varianz sqrt(3) übergeben, stimmts?

ja genau.

buschti
13-04-2007, 11:16
Noch eine kurze Frage: Ich hab jetzt die Histogramme so gemacht:


subplot(2,2,1); hist(histo1_mean,100);
subplot(2,2,2); hist(histo2_mean,100);
subplot(2,2,3); hist(histo3_mean,100);
subplot(2,2,4); hist(histo4_mean,100);


Wie kann ich bei subplots die x und y Achse beschränken, z.b.: von 0 bis 5? Ohne dem sieht man nicht, was sich entscheidend ändert. Bei normalen plots weiß ichs, bei subplots hab ichs noch nicht hinbekommen.

Mit subplot geht das nicht, da wird nur fetsgelegt, wo im Fenster was gezeichnet wird. Du kannst das aber bei der Funktion hist() machen, indem Du einen Vektor übergibst, der die Histogramm-Intervalle angibt:

hist(histo1_mean,linspace(0,5,100));

linspace(0,5,100) erzeugt Dir einen Vektor mit 100 Elementen, die von 0 bis 5 linear ansteigen.

LG
Sebastian (EFME-Tutor)

brnas
13-04-2007, 23:46
Wenn es heisst
"Generate 100 samples each containing 5 points for the normal distributionN(μ, 2) = N(4, 3).",
soll man eine 100x5 Matrix erstellen und mit normrnd Zahlen reinschreiben? Diese Zahlen sind dann Zufallszahlen welche aus N(4,3) generiert wurden.
Weiters sollen dann aus diesen Zufallszahlen der Mittelwert und die Standardabweichung berechnet werden?
Hab ich das richtig verstanden? Wenn ja - was hat das ganze für einen Sinn?

el tschi, brnas

buschti
16-04-2007, 10:47
Wenn es heisst
"Generate 100 samples each containing 5 points for the normal distributionN(μ, 2) = N(4, 3).",
soll man eine 100x5 Matrix erstellen und mit normrnd Zahlen reinschreiben? Diese Zahlen sind dann Zufallszahlen welche aus N(4,3) generiert wurden.


ja


Weiters sollen dann aus diesen Zufallszahlen der Mittelwert und die Standardabweichung berechnet werden?
Hab ich das richtig verstanden? Wenn ja - was hat das ganze für einen Sinn?


Ja, aber die Berechnungen werden PRO sample durchgeführt, also 100 Mittelwerte und 100 Standardabweichungen.
Der Sinn davon erschließt sich hoffentlich, wenn man die Histogramme der verschiedenen Samplegrößen miteinander vergleicht.

LG
Sebastian (EFME-Tutor)

Swoncen
16-04-2007, 12:51
Es ist ersichtlich und logisch, aber das wars ja vorher auch schon.. das is im Prinzip ein Minibeispiel, oder hab ich was übersehen?

buschti
16-04-2007, 12:57
Es ist ersichtlich und logisch, aber das wars ja vorher auch schon.. das is im Prinzip ein Minibeispiel, oder hab ich was übersehen?

Ja, ist es. Natürlich ist das Ergebnis logisch und nicht sonderlich überraschend.

LG
Sebastian (EFME-Tutor)

Brösel
22-04-2007, 17:27
hm... ich check nicht ganz was daran logisch ist... ich stehe leider komplett auf der Leitung könnt ihr mir meinem Gehirn ein bisschen auf die Sprünge helfen? ich hab die Daten erstellt ... alles kein Problem auch die Berechnungen aber was sehe ich jetzt ???

buschti
23-04-2007, 09:43
hm... ich check nicht ganz was daran logisch ist... ich stehe leider komplett auf der Leitung könnt ihr mir meinem Gehirn ein bisschen auf die Sprünge helfen? ich hab die Daten erstellt ... alles kein Problem auch die Berechnungen aber was sehe ich jetzt ???

Wenn Du dir die Histogramme des geschätzten Mittelwertes anschaust, was passiert dann bei steigenden Sample-Größen? Und wieso ist das so?

Überleg Dir mal: Wenn Du einen Mittelwert einer Verteilung schätzen mußt, wann ist der geschätzte Wert in der Regel genauer? Wenn Du 5 Stichproben oder wenn Du 500 Stichproben hast?

LG
Sebastian (EFME-Tutor)