Hallo zusammen,
ich bin noch blutige R-Anfängerin und muss im Zuge meines Studiums einen Student-t-Verteilung-QQ-Plot für log returns (Aktienrenditen) erstellen.
Ich habe schon viel versucht, aber ich komme nicht darauf. Einen "normal QQ-Plot" kann ich problemlos erstellen. Den für eine t-distribution leider aber nicht.
Meine bisherigen Versuche sehen wie folgt aus:
qqplot(data1$logret, rt(2797, df=2796),
ylab = "T-quantiles",
xlab = "Data quantiles")
qqline(data1$logret, col = "blue", distribution = rt(2797, df=2796))
Es funktioniert aber leider nicht. Weiß jemand mir zu helfen? Erkennt ihr vielleicht meinen Fehler?
Vielen Dank im Voraus.
Liebe Grüße
Mim1
student-t-QQPlot zeichnen
Re: student-t-QQPlot zeichnen
Hallo!
Was funktioniert denn genau nicht? Was passiert, wenn Du das qqplot-Kommando in der Form eingibst. Gibt es eine Fehlermeldung? Eine Warnung? Kommt Rauch aus dem Computer oder fliegt die Sicherung raus? Oder gefällt Dir die entstehende Grafik nicht?
Dein qqline-Aufruf sieht anders aus als in den Anwendungsbeispielen in der Hilfeseite dazu aber erst müssen wir klären, ob der qqplot-Aufruf schon scheitert.
LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Re: student-t-QQPlot zeichnen
Hi, du hast recht! Ich sollte spezifizieren, was nicht funktioniert.
Ich erhalte folgende Meldung wenn ich den Code ausführe:
Contacting Delphi...the oracle is unavailable.
We apologize for any inconvenience.
> qqline(data1$logret, col = "blue", distribution = rt(2797, df=2796))
Fehler in qqline(data1$logret, col = "blue", distribution = rt(2797, :
is.function(distribution) is not TRUE
Vielen Dank nochmal für deine Mühe!
Ich erhalte folgende Meldung wenn ich den Code ausführe:
Contacting Delphi...the oracle is unavailable.
We apologize for any inconvenience.
> qqline(data1$logret, col = "blue", distribution = rt(2797, df=2796))
Fehler in qqline(data1$logret, col = "blue", distribution = rt(2797, :
is.function(distribution) is not TRUE
Vielen Dank nochmal für deine Mühe!
Re: student-t-QQPlot zeichnen
Die Fehlermeldung verweist uns auf qqline. Zurück zu meiner Frage oben: Wurde denn vorher ein QQPlot ohne Linie richtig gezeichnet, oder nicht?
Wenn Du aufrufst findest Du ganz unten auf der Hilfeseite einen Vorschlag, wie man qqline mit einer Funktion die nicht die Normalverteilung ist, aufruft. Dort steht
Die Chiquadratverteilung wird hier als function übergeben und Deine Fehlermeldung beschwert sich, dass keine Funktion übergeben wurde. Vielleicht solltest Du das Beispiel mit Deiner t-Verteilung nachbauen?
LG,
Bernhard
Wenn Du
Code: Alles auswählen
help(qqline)
Code: Alles auswählen
qqline(y, distribution = function(p) qchisq(p, df = 3),
probs = c(0.1, 0.6), col = 2)
LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Re: student-t-QQPlot zeichnen
Nein, leider wird nichts gezeichnet. Ich erhalte ja hier die Fehlermeldung "Contacting Delphi...the oracle is unavailable.
We apologize for any inconvenience..". Ich weiß leider nicht was das bedeuten soll.
Zu der qqline: Ich verstehe nicht richtig, was hier "p" bedeuten soll.
We apologize for any inconvenience..". Ich weiß leider nicht was das bedeuten soll.
Zu der qqline: Ich verstehe nicht richtig, was hier "p" bedeuten soll.
Re: student-t-QQPlot zeichnen
Zu Teil 1 des Problems wäre dann ein reproduzierbares Beispiel gut: viewtopic.php?f=20&t=11
Zu Teil 2 solltest Du Dich über Funktionen in R und wie man sie definiert informieren. Das sprengt sonst den Rahmen eines Forums. Vielleicht hier https://www.dataquest.io/blog/r-functions-tutorial/
LG,
Bernhard
Zu Teil 2 solltest Du Dich über Funktionen in R und wie man sie definiert informieren. Das sprengt sonst den Rahmen eines Forums. Vielleicht hier https://www.dataquest.io/blog/r-functions-tutorial/
LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte