Seite 1 von 1

Hilfe bei Aufgabenstellung

Verfasst: So Apr 08, 2018 1:42 pm
von Anni93
Hallo ihr Lieben,

ich muss im Rahmen einer Hausarbeit unter anderem folgende Aufgabe in R abbilden:

Bild
http://www.bilder-upload.eu/show.php?fi ... 187164.png

Leider weiß ich überhaupt nicht wie ich da vorgehen soll. Streng genommen ist es doch auch schon ein Loop, wenn ich die Zufallsvariablen mittels folgendem befehl auf einen Vektor speichere oder? Ich habe leider echt genrell Probleme mit R. Ich erwarte hier wirklich keine vollständige Lösung auch wenn das natürlich schön wäre, aber falls ihr wisst wie es geht und mir (konkrete) Denkanstöße geben könntet wäre das wirklich super lieb!

LG Anni

#Edit1:
könnte man sowas bereits als nutzung eines Loops auslegen?

rnd.samples <- function(n) {
R <- 10000
Z <- rep(NA, R)
for (r in 1:R) {
X <- runif(n, -1,1)
Z[r] <- sum(X)
}

Re: Hilfe bei Aufgabenstellung

Verfasst: So Apr 08, 2018 1:52 pm
von bigben
Anni93 hat geschrieben: So Apr 08, 2018 1:42 pmBild
http://www.bilder-upload.eu/show.php?fi ... 187164.png
Sorry, so funktioniert der Link nicht.
könnte man sowas bereits als nutzung eines Loops auslegen?

rnd.samples <- function(n) {
R <- 10000
Z <- rep(NA, R)
for (r in 1:R) {
X <- runif(n, -1,1)
Das wird sicher eine Schleife, wenn Du die eckige Klammern auch nochmal zu machst.

LG,
Bernhard

Re: Hilfe bei Aufgabenstellung

Verfasst: So Apr 08, 2018 2:22 pm
von Anni93
Habe gerade meinen Beitrag gelöscht, weil ich ihn erst doppelt gepostet hatte aufgrund einer Änderung.. jetzt sind beide wieder weg. Also nochmal neu:

Hallo Bernhard, vielen Dank für deine Anmerkung! Der Link sollte jetzt funktionieren.

Ich habe leider momentan immer wieder etwas Panik und das behindert mich leider extrem in meinem fortkommen.. Mit richtig gesetzten Klammern müsste es dann so aussehen oder?


rnd.samples <- function(n) {
R <- 10000
Z <- rep(NA, R)
for (r in 1:R) {
X <- runif(n, 0,1)
Z[r] <- sum(X)
}
}

Edit: Ich habe Probleme mir vorzustellen, wie ich die Variablen sonst erstellen sollte.

Re: Hilfe bei Aufgabenstellung

Verfasst: So Apr 08, 2018 2:50 pm
von jogo
Hallo Anni,

willkommen im Forum!
Ich bin erstmal soweit mit der Aufgabe:

Code: Alles auswählen

n <- 100
R <- 1000
X <- matrix(runif(R*n), R, n)

Mn <- apply(X, 1, max)
Mn.quer <- (Mn - 1)/n
(Bitte beachte auch, wie schön der Code in entsprechende Tags gesetzt ist. Das kannst Du zukünftig auch; bitte lies: viewtopic.php?f=20&t=29 )

Gruß, Jörg

Re: Hilfe bei Aufgabenstellung

Verfasst: So Apr 08, 2018 3:22 pm
von Anni93
Hallo Jörg,

vielen Dank für den Ansatz! Eine wirklich schlaue Idee mit der Matrix. Im nachhinein wirkt alles immer so einfach.


"Show the convergence by means of an appropriate plot" Also erstmal muss ich bemerken, dass ich das Englisch hier komisch finde und es verstehe als: "Show the convergence of means by an appropriate plot",
also die Annährung der Durschnitte von Mn.quer in n. Je höher n, desto weniger die Abweichung zu n-1.

Wäre es eine gute Idee sich auf diese Differenzen zu konzentrieren?

Code: Alles auswählen

Abweichung.Mn.quer <- Mn.quer[n] - Mn.quer[n-1]
plot(Abweichung.Mn.quer)
oder soll man hier die beiden Verteilungen irgendwie direkt gegeneinander plotten?
bitte entschuldigt diese blöden Fragen von mir.. Ich glaube das ist schon sehr anstrengend mit so einer Anfängerin, wie mir zu reden.. dafür vorab schon eine Entschuldigung. Aber alleine dieser Ansatz führt zu mehr Seelenheil :) *grins*

Edit: wo wir bei anstrengend sind. Ich merke gerade, dass mein Code ohne for-Schleife natürlich blödsinn ist, ich sie aber auch nicht benutzen darf...

Re: Hilfe bei Aufgabenstellung

Verfasst: So Apr 08, 2018 4:22 pm
von bigben
Hallo,
Anni93 hat geschrieben: So Apr 08, 2018 3:22 pm"Show the convergence by means of an appropriate plot" Also erstmal muss ich bemerken, dass ich das Englisch hier komisch finde und es verstehe als: "Show the convergence of means by an appropriate plot",
also die Annährung der Durschnitte von Mn.quer in n. Je höher n, desto weniger die Abweichung zu n-1.
Das dürfte eher ein Sprachproblem auf Deiner Seite sein. "Means" ist nicht nur der Plural von Mittelwert, sondern bedeutet auch "Hilfsmittel" oder "Werkzeug". "By means of" heißt "anhand von" oder "mittels". Du sollst also die Konvergenz der Verteilung (nicht der Mittelwerte) mittels eines angemessenen Plots zeigen. Stellt sich für uns die Frage, welche geeigneten Plots Du kennst. Sagt Dir qqplot() oder der Quantile-Quantile-Plot was?
https://de.wikipedia.org/wiki/Quantil-Quantil-Diagramm

Sonst könnte man Histogramme vergleichen oder ähnliches. Es gibt viele mögliche Antworten - welche hast Du gelernt?

LG,
Bernhard

Re: Hilfe bei Aufgabenstellung

Verfasst: So Apr 08, 2018 4:50 pm
von Anni93
Das dürfte eher ein Sprachproblem auf Deiner Seite sein. "Means" ist nicht nur der Plural von Mittelwert, sondern bedeutet auch "Hilfsmittel" oder "Werkzeug". "By means of" heißt "anhand von" oder "mittels". Du sollst also die Konvergenz der Verteilung (nicht der Mittelwerte) mittels eines angemessenen Plots zeigen.
Ja da hast du recht.. ich war zu sehr auf statistische Wörter fixiert.
Stellt sich für uns die Frage, welche geeigneten Plots Du kennst. Sagt Dir qqplot() oder der Quantile-Quantile-Plot was?
qqplots hatten wir nicht in der Vorlesung. Aber ich wir hatten ein Histogramm, dass mit einer Line einer anderen Verteilung kombiniert wurde. wir haben meistens jedoch nur die "truehist()" Histogramme benutzt. Aber ich habe mir deinen Artikel auf Wikipedia gerade angeschaut. Ich denke der Professor möchte, dass wir dinge anwenden, die über die Vorlesung hinaus gehen (die nicht besonders umfangreich war). Das heißt ich versuche jetzt die Weibul-Verteilung bei R zu erstellen mit der Dichte exp(x) und plotte es dann gegen meine Mn.quer Verteilung mittels qqplot?

Code: Alles auswählen

weibull.distribution <- rweibull(1000, 1,-1)

qqplot(Mn.quer, weibull.distribution)
f(x) = (a/b) (x/b)^(a-1) exp(- (x/b)^a) da dies die Dichtefunktion der Weibullfunktion ist und in der Aufgabe die Dichte exp(x) sein soll, muss a=1 und b=-1 sein oder verstehe ich wieder etwas falsch? Leider produziere nur NANs wenn b -1 ist..

Aber ohne minus 1 scheinen die Verteilungen auch gespiegelt zu sein.

Code: Alles auswählen

n <- 100
R <- 1000
X <- matrix(runif(R*n, 0,1), n, R)

Mn <- apply(X, 2, max)
Mn.quer <- (Mn - 1)/n

weibull.distribution <- rweibull(1000, 1, 1) 

hist(weibull.distribution)
hist(Mn.quer)

qqplot(Mn.quer, weibull.distribution)

Re: Hilfe bei Aufgabenstellung

Verfasst: So Apr 08, 2018 5:21 pm
von bigben
Hi!
Anni93 hat geschrieben: So Apr 08, 2018 4:50 pmAber ich wir hatten ein Histogramm, dass mit einer Line einer anderen Verteilung kombiniert wurde. wir haben meistens jedoch nur die "truehist()" Histogramme benutzt.


truehist kenne ich nicht. Beispiele für Verteilungsvergleiche mit Histogrammen und Kerndichteschätzern findet man hier: http://www.cookbook-r.com/Graphs/Plotti ... ple-groups

Eine Reihe anderer Möglichkeiten hier: https://stats.stackexchange.com/questio ... tributions
Ich denke der Professor möchte, dass wir dinge anwenden, die über die Vorlesung hinaus gehen (die nicht besonders umfangreich war).


Das kannst Du nur selbst entscheiden. Ich drücke Dir dafür die Daumen.

LG,
Bernhard