Seite 1 von 2
Ergebnisse nach Excel exportieren
Verfasst: Di Aug 10, 2021 3:06 pm
von karnevals_jeck
Hallo zusammen,
ich bin ein ziemlicher Neuling in R (Studio), daher ist mein Horizont noch nicht so weit. In der Suche konnte ich mein Problem nur teilweise finden, daher mache ich einen neune Post auf.
Ich mache eine Event-Studie auf Aktienrenditen, habe bereits Alle Daten aufbereitet und mein R-Code steht auch und funktioniert.
Nun habe ich das Problem, dass ich ca. 270 Regressionen mit den dazugehörigen Tests durchführen will, und die Ergebnisse tabellarisch zusammenfassen muss.
Das Herauskopieren der einzelnen (Zwischen-)Ergebnisse ist sehr mühsam und ich würde gerne, wenn möglich, alles in eine Excel-Datei ausgeben lassen. Ich weiß nur nicht, wie ich das anstellen soll. Ich habe bereits die Funktion write.csv2 in Verbindung mit rbind versucht, aber ich bekomme erstens Fehlermeldungen und zweitens nicht alle Ergebnisse zusammen.
Gibt es da nicht eine effizientere Methode?
Vielen Dank vorab!
Re: Ergebnisse nach Excel exportieren
Verfasst: Di Aug 10, 2021 4:26 pm
von student
Hallo,
Leider zeigst Du hier nicht, was Du schon gemacht hast und auch nicht die Fehlermeldung.
Ich sehe keinen Zusammenhang zwischen write.csv2 und rbind vermute aber, dass Du zuerst einen Dataframe bastelst und diesen dann anschließend über write.csv2 speichern möchtest?
Re: Ergebnisse nach Excel exportieren
Verfasst: Di Aug 10, 2021 4:48 pm
von bigben
Hallo karnevals,
karnevals_jeck hat geschrieben: Di Aug 10, 2021 3:06 pmGibt es da nicht eine effizientere Methode?
Eine sehr viel effizientere Methode zum Fragenstellen ist das Erstellen eines reproduzierbaren Minimalbeispiels. Das Konzept an sich ist hier sehr gut erklärt:
https://stackoverflow.com/help/minimal- ... le-example
Speziell für R nützliche Hinweise dazu gibt es hier:
http://forum.r-statistik.de/viewtopic.php?f=20&t=11
karnevals_jeck hat geschrieben: Di Aug 10, 2021 3:06 pmGibt es da nicht eine effizientere Methode?
Um die Ergebnisse linearer Regressionen in Tabellen zusammenzufassen sind die Funktionen
tidy und
glance im Paket
broom sehr effizient. Eine gute Einführung dazu gibt es hier:
https://broom.tidymodels.org/articles/broom.html ein praktisches Beispiel hat sich hier ergeben:
http://forum.r-statistik.de/viewtopic.php?f=7&t=3368
Konkreter zu Deinem Problem können wir helfen, sobald es ein minimales reproduzierbares Beispiel gibt.
LG,
Bernhard
Re: Ergebnisse nach Excel exportieren
Verfasst: Mi Aug 11, 2021 7:25 am
von karnevals_jeck
Guten Morgen, und vielen Dank für die schnellen Antworten!
Ich muss vor der Regression die Datenreihen auf Konsistenz usw. prüfen, z.B. auf Stationarität. Dazu ein reproduzierbares Beispiel (Daten im Anhang:
Code: Alles auswählen
# Stationaritaetspruefung HDAX Schlusskurse
#####
library(lmtest) #fuer Reset-Test
library(sandwich) #fuer Newey-West-Korrektur
library(tseries) #fuer T-Series Tests
#ADF-Test
adf.test(HDAX_Schaetzfenster$Schlusskurs)
#PP-Test
pp.test(HDAX_Schaetzfenster$Schlusskurs)
#KPSS-Test
kpss.test(HDAX_Schaetzfenster$Schlusskurs)
Das funktioniert ja auch und ich bekomme mein Ergebnis, aber nur in der Konsole. Und das für eine ganze Reihe von Tests und später auch Regressionsdiagnostik. Am liebsten würde ich diese ganzen Ergebnisse in einer Datei ausgeben. Aber dazu müsste das o.g. Beispiel ja erst mal zu einem Dataframe werden?
student hat geschrieben: Di Aug 10, 2021 4:26 pm
Hallo,
Leider zeigst Du hier nicht, was Du schon gemacht hast und auch nicht die Fehlermeldung.
Ich sehe keinen Zusammenhang zwischen
write.csv2 und
rbind vermute aber, dass Du zuerst einen
Dataframe bastelst und diesen dann anschließend über
write.csv2 speichern möchtest?
Genau, hier habe ich schon selber versucht, Ergebnisse zusammen zu bringen, was aber wohl aufgrund der Struktur nicht geht. Ich würde auch hier gern ein Beispielfall zeigen, müsste aber dazu den gesamten Code posten. Ist das gewollt?
Danke und viele Grüße!
Re: Ergebnisse nach Excel exportieren
Verfasst: Mi Aug 11, 2021 9:00 am
von student
Hast Due es mal mit
Code: Alles auswählen
#ADF-Test
ADF_Ergebnis <- adf.test(HDAX_Schaetzfenster$Schlusskurs)
probiert?
ADF_Ergebnis (habe ich mal so gewählt) nimmt die Rückgabe von
adf-text() auf und Du solltest mit
ADF_Ergebnis$xxx auf die einzelnen Resultate zugreifen können.
Schau Dir den Inhalt von
ADF_Ergebnis vorher mit
str(ADF_Ergebnis) an.
Was das Dataframe angeht, hier nur ein kleines Beispiel:
Code: Alles auswählen
# Ausgabe-Tabelle (DataFrame) basteln:
# Daten: Die Gesamtdaten
# vergleich: Neue, zusätzliche Daten (Teil1)
# ort_aus_vergleich: Ebenfalls neue Daten...
ausgabe <- data.frame(Daten, vergleich, ort_aus_vergleich)
return(ausgabe)
Ich will damit andeuten, dass Du über z. B.
ADF_Ergebnis$xxx ganz gezielt Deine Ausgabe zusammenbasteln kannst...
Re: Ergebnisse nach Excel exportieren
Verfasst: So Aug 22, 2021 12:11 pm
von karnevals_jeck
student hat geschrieben: Mi Aug 11, 2021 9:00 am
Hast Due es mal mit
Code: Alles auswählen
#ADF-Test
ADF_Ergebnis <- adf.test(HDAX_Schaetzfenster$Schlusskurs)
probiert?
ADF_Ergebnis (habe ich mal so gewählt) nimmt die Rückgabe von
adf-text() auf und Du solltest mit
ADF_Ergebnis$xxx auf die einzelnen Resultate zugreifen können.
Schau Dir den Inhalt von
ADF_Ergebnis vorher mit
str(ADF_Ergebnis) an.
Was das Dataframe angeht, hier nur ein kleines Beispiel:
Code: Alles auswählen
# Ausgabe-Tabelle (DataFrame) basteln:
# Daten: Die Gesamtdaten
# vergleich: Neue, zusätzliche Daten (Teil1)
# ort_aus_vergleich: Ebenfalls neue Daten...
ausgabe <- data.frame(Daten, vergleich, ort_aus_vergleich)
return(ausgabe)
Ich will damit andeuten, dass Du über z. B.
ADF_Ergebnis$xxx ganz gezielt Deine Ausgabe zusammenbasteln kannst...
Hi, sorry für meine späte Antwort. ich habe jetzt mittlerweile alle Daten aufbereitet, das ist echt menge Holz.
Vielen Dank für den Tipp!
Das hier verstehe ich und bin an sich damit auch zufrieden:
Code: Alles auswählen
#ADF-Test
ADF_Ergebnis <- adf.test(HDAX_Schaetzfenster$Schlusskurs)
Das heißt, ich könnte ich mir für jeden einzelnen Test ein (ADF_Ergebnis1, ADF_Ergebnis2, etc.) "Daten" bauen und dann mit dem zweiten Code
Code: Alles auswählen
# Ausgabe-Tabelle (DataFrame) basteln:
# Daten: Die Gesamtdaten
# vergleich: Neue, zusätzliche Daten (Teil1)
# ort_aus_vergleich: Ebenfalls neue Daten...
ausgabe <- data.frame(Daten, vergleich, ort_aus_vergleich)
return(ausgabe)
in einer einzigen Tabelle ausgeben?
Nur was meinst Du mit "Vergleich, Ort aus Vergleich"? Meine Idee wäre bspw. gewesen:
Code: Alles auswählen
ausgabe <- data.frame(ADF_Ergebnis1, ADF_Ergebnis2, etc.)
return(ausgabe)
Und dann das ganze mit write.csv2 oder writeXLS als Tabelle ausgeben.
Sorry, wenn ich mich total laienhaft ausdrücke!
Edit: Ich benötige immer nur den P-Wert (p-value), vielleicht wird die Ausgabe dadurch einfacher?
Re: Ergebnisse nach Excel exportieren
Verfasst: Mo Aug 23, 2021 9:45 am
von student
Oh, sorry, ich dachte das wäre klar!
Daten,
Vergleich usw sind
meine Variablen und sollten hier nur ein Beispiel sein!

Re: Ergebnisse nach Excel exportieren
Verfasst: Mo Aug 23, 2021 10:05 am
von karnevals_jeck
student hat geschrieben: Mo Aug 23, 2021 9:45 am
Oh, sorry, ich dachte das wäre klar!
Daten,
Vergleich usw sind
meine Variablen und sollten hier nur ein Beispiel sein!
Ok, gut!
Ich habe mir jetzt folgendes gebastet:
Code: Alles auswählen
#####
# Stationaritaetspruefung HDAX Schlusskurse
#####
#ADF-Test
adf.test(HDAX_Schaetzfenster$Schlusskurs)
HDAX_ADF <- adf.test(HDAX_Schaetzfenster$Schlusskurs)
#PP-Test
pp.test(HDAX_Schaetzfenster$Schlusskurs)
HDAX_PP <- pp.test(HDAX_Schaetzfenster$Schlusskurs)
#KPSS-Test
kpss.test(HDAX_Schaetzfenster$Schlusskurs)
HDAX_KPSS <- kpss.test(HDAX_Schaetzfenster$Schlusskurs)
ausgabe <- data.frame(HDAX_ADF, HDAX_PP, HDAX_KPSS)
return(ausgabe)
Bekomme aber folgenden Fehler ausgegeben:
Code: Alles auswählen
Error in as.data.frame.default(x[[i]], optional = TRUE, stringsAsFactors = stringsAsFactors) :
cannot coerce class ‘"htest"’ to a data.frame
Was mache ich falsch?
Re: Ergebnisse nach Excel exportieren
Verfasst: Mo Aug 23, 2021 3:53 pm
von karnevals_jeck
Ich habe jetzt noch einmal mit dem empfohlenen BROOM-Paket experimentiert und finde es ganz schick. Eigentlich bin ich mit der Ausgabe fast schon zufrieden, nur hätte ich gerne die Ergebnisse untereinander und nicht nebeneinander. Bekommt man das irgendwie hin?
Code: Alles auswählen
#####
# Stationaritaetspruefung HDAX Schlusskurse
# Pakete installieren
library(lmtest) #fuer Reset-Test
library(sandwich) #fuer Newey-West-Korrektur
library(tseries) #fuer T-Series Tests
library(readxl) #fuer den Import von Excel-Dateien
library(WriteXLS) #fuer das Anlegen von Excel-Dateien
library(broom) #fuer die tabellarische Darstellung und Ausgabe der Test-Methoden
#####
#ADF-Test
adf.test(HDAX_Schaetzfenster$Schlusskurs)
broom::tidy(adf.test(HDAX_Schaetzfenster$Schlusskurs))
ADF_HDAX <- broom::tidy(adf.test(HDAX_Schaetzfenster$Schlusskurs))
#PP-Test
pp.test(HDAX_Schaetzfenster$Schlusskurs)
broom::tidy(pp.test(HDAX_Schaetzfenster$Schlusskurs))
PP_HDAX <- broom::tidy(pp.test(HDAX_Schaetzfenster$Schlusskurs))
#KPSS-Test
kpss.test(HDAX_Schaetzfenster$Schlusskurs)
broom::tidy(kpss.test(HDAX_Schaetzfenster$Schlusskurs))
KPSS_HDAX <- broom::glance(kpss.test(HDAX_Schaetzfenster$Schlusskurs))
ALLE_Stat <- data.frame(ADF_HDAX, PP_HDAX, KPSS_HDAX)
WriteXLS(ALLE_Stat, "Stationaritaetspruefung.xls")
Re: Ergebnisse nach Excel exportieren
Verfasst: Mo Aug 23, 2021 9:11 pm
von student
Sorry, mit
broom habe keine besondere Erfahrung. Aber zu
Code: Alles auswählen
HDAX_KPSS <- kpss.test(HDAX_Schaetzfenster$Schlusskurs)
kann ich sagen, dass Du die komplette Ausgabe der Funktion
kpp.test in
HDAX_KPSS ablegst und diese kannst Du nicht mit
in
ausgabe ablegen. Du musst Dir das mit dem $-Operator zusammenbasteln....