R Markdown Excel Datei knitten

Wie rufe ich R-Funktionen auf, wie selektiere ich Daten, ich weiß nicht genau ....

Moderatoren: EDi, jogo

Antworten
RRRR
Beiträge: 2
Registriert: Mo Mär 08, 2021 4:58 pm

R Markdown Excel Datei knitten

Beitrag von RRRR »

Hallo zusammen

Für eine Arbeit an meiner Schule will ich in R Markdown einen Code schreiben, welchen ich für verschiedene Excel Dateien mit der gleichen Formatierung (aber anderen Daten) brauchen kann, um ein .html Dokument zu erstellen.

Dabei handelt es sich um Finanzdaten von verschiedenen Unternehmen, welche ich eben in Form einer Excel Datei habe. Mit R Markdown möchte ich einen Bericht zur Finanzanalyse erstellen. Die Erstellung dieses Berichts möchte ich so weit wie möglich automatisieren, dass ich für den Bericht einer anderen Unternehmung lediglich ein anderes Excel einlesen muss.

Leider habe ich keine Erfahrungen mit R Studio und erlerne die Funktionen selbstständig. Welche Funktion kann ich verwenden um beiliegende Excel Datei in einer .html Datei aufzuzeigen? Mit dem Befehl view(Datei) und summary(Datei) zeigt es mir die Daten in der Vorschau über das Play Zeichen, kann das Dokument aber nicht knitten. Es taucht immer wieder die Fehlermeldung auf : Error while opening file / Das System kann die angegebene Datei nicht finden

Muss ich evtl. die Excel Datei anpassen und umformatieren um diese einzulesen?


Besten Dank für Eure Hilfe im Voraus!
Dateianhänge
Bilanz_Tesla.xlsx
(16.8 KiB) 64-mal heruntergeladen
Benutzeravatar
EDi
Beiträge: 1599
Registriert: Sa Okt 08, 2016 3:39 pm

Re: R Markdown Excel Datei knitten

Beitrag von EDi »

Welche Funktion kann ich verwenden um beiliegende Excel Datei in einer .html Datei aufzuzeigen?

Mit knitr::kable kann man data.frames in html umwandeln. Hier ein Beispiel anhand des iris datensatzes:

Code: Alles auswählen

knitr::kable(iris, format ='html')
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
Bild.
bigben
Beiträge: 2780
Registriert: Mi Okt 12, 2016 9:09 am

Re: R Markdown Excel Datei knitten

Beitrag von bigben »

Hallo RRRR,
RRRR hat geschrieben: Mo Mär 08, 2021 5:14 pmEs taucht immer wieder die Fehlermeldung auf : Error while opening file / Das System kann die angegebene Datei nicht finden

Muss ich evtl. die Excel Datei anpassen und umformatieren um diese einzulesen?
Lies doch nochmal nach. Steht da "kann die angegebene Datei nicht finden" oder steht da " Datei bedarf der Anpassung und des Umformatierens"? Du kannst Dir mit

Code: Alles auswählen

file.choose()
eine Dateiauswahldialox anzeigen lassen, darin Dein Escelfile-Aussuchen und bekommst als Rückgabewert eine Ortsbeschreibung dieser Datei auf Deinem Rechner in R-tauglicher Form. Das könnte ein String sein, der so aussieht:

Code: Alles auswählen

"E:\\RData\\wichtig.xlsx"
Verstehst Du, warum die Backslahes `\` dort alle doppelt aufgeführt sind? Wenn noch nicht, dann solltest Du erst noch ein paar Texte zum Umgang von R mit Dateien lesen.

LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
schubbiaschwilli
Beiträge: 253
Registriert: Di Jun 27, 2017 12:09 pm

Re: R Markdown Excel Datei knitten

Beitrag von schubbiaschwilli »

Gude!

Bis jetzt habe ich immer pdfs gebaut (und hatte Probleme mit Latex/MiKTeX), aber html (oder auch word) ist ja eher einfach: Markdown einrichten und loslegen, also bspw.:

Code: Alles auswählen

---
title: "R Markdown Excel Datei knitten"
author: "schubbiaschwilli"
date: "Last compiled on `r format(Sys.time(), '%H:%M:%S %d.%m.%Y')`"
output: html_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```

# Einlesen der Daten

```{r}
DAX <- EuStockMarkets[,1]
DAX <- cbind(DAX, c(NA, diff(log(EuStockMarkets[,1]))))
```

# Plot

```{r}
plot(DAX)
```
Das gibt dann das:
Bild

https://github.com/schubbiaschwilli/for ... itten.html
(Man muss die Datei wohl runterladen, und kann sie dann erst mit einem Browser öffnen - Vielleicht geht es auch anders, aber davon hab' ich keine Ahnung.)

Dank&Gruß
schubbiaschwilli
RRRR
Beiträge: 2
Registriert: Mo Mär 08, 2021 4:58 pm

Re: R Markdown Excel Datei knitten

Beitrag von RRRR »

Besten Dank für Eure Antworten!

@schubbiaschwilli: Ich verstehe nicht ganz wie du die Daten eingelesen hast. Ich gehe so vor, dass ich bei Environment über Import Dataset mein .xlsx Dokument einlese. Dann lese ich Datei ein mit:

```{r}
show(Dateiname)
```

Ich verstehe nicht ganz was du gemacht hast. Ist der Name deiner Datei "EuStockMarkets" und du überschreibst in einem ersten Schritt die Datei mit dem Namen "DAX"? Und was machst du genau mit der Formel DAX <- cbind(DAX, c(NA, diff(log(EuStockMarkets[,1]))))?

Besten Dank für Eure hilfreichen Tipps!!
schubbiaschwilli
Beiträge: 253
Registriert: Di Jun 27, 2017 12:09 pm

Re: R Markdown Excel Datei knitten

Beitrag von schubbiaschwilli »

Gude!
Ich verstehe nicht ganz wie du die Daten eingelesen hast.
EuStockMarkets ist ein Datensatz, der als Standarddatensatz in R enthalten ist - Da wird nichts eingelesen. Da ich nicht viel von xl-Dateien zum Datenaustausch über unterschiedliche Software bzw. außerhalb von M$ hinweg halte (teilweise sind unterschiedliche Ländereinstellungen da schon ein Problem), nutze ich sowas auch wenig bis gar nicht, und wenn dann nur für Geld, und hab' da auch wenig Erfahrung - Und die Erfahrungen, die ich habe, sind sehr... Nein, ich mag nicht darüber reden.
Und was machst du genau mit der Formel DAX <- cbind(DAX, c(NA, diff(log(EuStockMarkets[,1]))))
Ist nichts anderes als die Berechnung der stetigen Renditen - Hat jetzt mit deiner Frage nichts zu tun - Das hab' ich aus einem meiner Markdowns rauskopiert, um schnell ein Beispiel bauen zu können.

Dank&Gruß
schubbiaschwilli
bigben
Beiträge: 2780
Registriert: Mi Okt 12, 2016 9:09 am

Re: R Markdown Excel Datei knitten

Beitrag von bigben »

RRRR hat geschrieben: Fr Mär 12, 2021 10:25 amIch gehe so vor, dass ich bei Environment über Import Dataset mein .xlsx Dokument einlese.
Wenn Du Daten in einer knitr-Seite nutzen willst dann müssten die Daten auch im RMarkdown eingelesen werden. Da muss also ein Einlesekommando in R stehen, nicht eine Menüklickfolge in RStudio.

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