Hallo zusammen,
ich möchte in meinem Datensatz, der aus Datum und Schlusskursen besteht, die Rendite aus den Schlusskursen berechnen.
Dafür habe ich folgenden Befehl genutzt:
MSCI_World_R$Rendite <- log(MSCI_World_R$PX_LAST) %>% diff()
Und bekomme folgende Fehlermeldung:
Fehler: Assigned data `log(MSCI_World_R$PX_LAST) %>% diff()` must be compatible with existing data.
x Existing data has 2870 rows.
x Assigned data has 2869 rows.
i Only vectors of size 1 are recycled.
Ich dachte mit diesem Befehl hätte ich das Problem schon behoben, dass die Zeitreihen nicht gleich lang sind, in dem ich den ersten Wert auf NA setze bei der Rendite.
Kann mir jemand weiterhelfen, wie ich den Befehl erweitern muss?
Vielen Dank und liebe Grüße, Corinna
Fehlermeldung bei Rendite aus Schlusskursen berechnen
Moderator: schubbiaschwilli
Re: Fehlermeldung bei Rendite aus Schlusskursen berechnen
diff() liefert dir per definition ein Element weniger. Da musst du was anhängen oder den Datensatz um eins kürzen.
Bitte immer ein reproduzierbares Minimalbeispiel angeben. Meinungen gehören mir und geben nicht die meines Brötchengebers wieder.
Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
.
Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
.
Re: Fehlermeldung bei Rendite aus Schlusskursen berechnen
Wenn ich in meinen Daten die erste Zahl bei der Variable PX_LAST lösche, funktioniert der Befehl.
Das sind meine Ausgangsdaten: Aber meinen Datensatz würde ich gerne nicht verändern.
Für mich soll der Befehl im Ergebnis nachher so aussehen:
Ich dachte der Befehl dif würde mir dann in meiner neuen Spalte "Rendite" in der ersten Spalte ein NA reinmachen.
Dafür habe ich das ja angehängt im Befehl.
Danke!
Gruß, Corinna
Das sind meine Ausgangsdaten: Aber meinen Datensatz würde ich gerne nicht verändern.
Für mich soll der Befehl im Ergebnis nachher so aussehen:
Ich dachte der Befehl dif würde mir dann in meiner neuen Spalte "Rendite" in der ersten Spalte ein NA reinmachen.
Dafür habe ich das ja angehängt im Befehl.
Danke!
Gruß, Corinna
-
- Beiträge: 253
- Registriert: Di Jun 27, 2017 12:09 pm
Re: Fehlermeldung bei Rendite aus Schlusskursen berechnen
Gude!
Du musst ein NA vor deiner Zeitreihe einfügen.
Nachtrag: Mit der EuStockMarkets-Zeitreihe (in R enthalten) kann man das so machen:
Dank&Gruß
schubbiaschwilli
Du musst ein NA vor deiner Zeitreihe einfügen.
Code: Alles auswählen
c(NA,<Deine Zeitreihe mit den Renditen>)
Code: Alles auswählen
DAX <- EuStockMarkets[,1]
DAX <- cbind(DAX, c(NA, diff(log(EuStockMarkets[,1]))))
schubbiaschwilli