Schleife zur Log Berechnung

Allgemeine Statistik mit R, die Test-Methode ist noch nicht bekannt, ich habe noch keinen Plan!

Moderatoren: EDi, jogo

Antworten
tghstud
Beiträge: 2
Registriert: Fr Okt 11, 2019 1:24 pm

Schleife zur Log Berechnung

Beitrag von tghstud » Fr Okt 11, 2019 1:36 pm

Hi,

ich bin noch ziemlicher Anfänger und muss für ein Projekt eine csv-Datei in R einlesen. In dieser Datei befinden sich in einer Spalte über 750 Schlusskurse einer Aktie. Mit diesen Dateien muss ich dann die log-Rendite mit der Formel log(Xi+1/Xi) berechnen. Dafür würde ich gerne eine Schleife verwenden, sodass mir die Werte als numeric ausgegeben werden. Damit ich des weitern Histogramm und Dichtefunktion plotten kann.

Wäre klasse, wenn mir jemand einen Vorschlag für die Ausgestaltung der Schleife geben könnte.

Vielen Dank :D

tghstud

bigben
Beiträge: 1061
Registriert: Mi Okt 12, 2016 9:09 am

Re: Schleife zur Log Berechnung

Beitrag von bigben » Fr Okt 11, 2019 1:54 pm

Hallo und willkommen im Forum!

Bitte lies http://forum.r-statistik.de/viewtopic.php?f=20&t=35

Ein erster Tipp weil's Dein erster Post ist:

Code: Alles auswählen

a <- c(1,2,3,3,4,4,4,4,4,4,5,5,5,6,7,8,8)
for(i in 1:(length(a)-1)){
  cat(a[i+1])
  cat(";")
}
LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte

tghstud
Beiträge: 2
Registriert: Fr Okt 11, 2019 1:24 pm

Re: Schleife zur Log Berechnung

Beitrag von tghstud » Fr Okt 11, 2019 5:31 pm

Hi,

danke für deine erste Hilfe, mir ist klar, dass ich hier nicht meine Hausaufgaben abschreiben soll, ich bräuchte nur die Voreinstellungen damit ich meine eigentliche Arbeit starten kann. Ich wollte nur meine Situation genau schildern, da es sonst ein wenig abstrakt sein kann.
Bisher habe ich mir Folgendes überlegt:

Code: Alles auswählen

Schlusskurse <- LVMH$Close
Erträge <- for(i in 1:(length(Schlusskurse-1))){
+ print(log(i)-log(i-1))
+ }
Leider komme ich nicht auf die gewünschten Ergebnisse, da zum Beispiel keine negativen Ergebnisse dargestellt werden, obwohl der Kurs von einem auf dem anderen Tag fällt.
Würde mich freuen, wenn jemand mir weiterhelfen könnte!

Danke nochmal!

jogo
Beiträge: 1478
Registriert: Fr Okt 07, 2016 8:25 am

Re: Schleife zur Log Berechnung

Beitrag von jogo » Fr Okt 11, 2019 5:50 pm

Bei mir sieht das so aus:

Code: Alles auswählen

diff(log(x))
Gruß, Jörg

bigben
Beiträge: 1061
Registriert: Mi Okt 12, 2016 9:09 am

Re: Schleife zur Log Berechnung

Beitrag von bigben » Fr Okt 11, 2019 6:30 pm

tghstud hat geschrieben:
Fr Okt 11, 2019 5:31 pm

Code: Alles auswählen

Schlusskurse <- LVMH$Close
Erträge <- for(i in 1:(length(Schlusskurse-1))){
+ print(log(i)-log(i-1))
+ }
Leider komme ich nicht auf die gewünschten Ergebnisse, da zum Beispiel keine negativen Ergebnisse dargestellt werden, obwohl der Kurs von einem auf dem anderen Tag fällt.
Hallo,

in Deinem Code-Vorschlag nimmst Du immer nur Logarithmen von i. Du willst aber nicht Logarithmen von i sondern von Schlusskurse. Desweiteren kann Schlusskurse[i-1] nicht funktionieren, wenn die i mit 1 anfangen. Die müssen mit 2 anfangen. Zuguterletzt hast Du einen Klammerfehler in

Code: Alles auswählen

 1:(length(Schlusskurse-1)
gemacht.

LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte

Antworten