R und MS Excel · MS Excel und R über XLConnect • Das Paket XLConnect wird durch die Mirai...

17
R und MS Excel Datenaustausch zwischen R und Excel auf Basis des XLConnect-Pakets Günter Faes

Transcript of R und MS Excel · MS Excel und R über XLConnect • Das Paket XLConnect wird durch die Mirai...

Page 1: R und MS Excel · MS Excel und R über XLConnect • Das Paket XLConnect wird durch die Mirai Solutions GmbH (Schweiz) zur Verfügung gestellt. • Das Paket XLConnect stellt leistungsfähige

R und MS Excel Datenaustausch zwischen R und Excel auf Basis des XLConnect-Pakets

Günter Faes

Page 2: R und MS Excel · MS Excel und R über XLConnect • Das Paket XLConnect wird durch die Mirai Solutions GmbH (Schweiz) zur Verfügung gestellt. • Das Paket XLConnect stellt leistungsfähige

Prozess und Statistik

Günter Faes, [email protected] 2

MS Excel

Sehr hohe Verbreitung

Einfache Bedienung

Datenmanagement

Visualisierung

Page 3: R und MS Excel · MS Excel und R über XLConnect • Das Paket XLConnect wird durch die Mirai Solutions GmbH (Schweiz) zur Verfügung gestellt. • Das Paket XLConnect stellt leistungsfähige

Prozess und Statistik

Günter Faes, [email protected] 3

Statistikumgebung R

Sehr leistungsfähiges Statistikprogramm

Beliebig erweiterbar

Herausfordernd im Datenmanagement und

Visualisierung

Page 4: R und MS Excel · MS Excel und R über XLConnect • Das Paket XLConnect wird durch die Mirai Solutions GmbH (Schweiz) zur Verfügung gestellt. • Das Paket XLConnect stellt leistungsfähige

Prozess und Statistik

Günter Faes, [email protected] 4

Warum MS Excel und R

© cirquedesprit - Fotolia.com

© Rudie - Fotolia.com

© Rudie - Fotolia.com

Daten werden oft mit Excel erhoben und bearbeitet.

Der Analyst hat Vorstellungen, wie die Daten ausgewertet und dargestellt werden sollen.

Nur wie, wenn die Excel-Möglichkeiten nicht ausreichen?

Excel und R verbinden?

Page 5: R und MS Excel · MS Excel und R über XLConnect • Das Paket XLConnect wird durch die Mirai Solutions GmbH (Schweiz) zur Verfügung gestellt. • Das Paket XLConnect stellt leistungsfähige

Prozess und Statistik

Günter Faes, [email protected] 5

MS Excel und R

RExcel • Direkte Excel-R-

Interaktion

XLConnect

• Keine direkte Excel-R-Interaktion

• Ausgefeilte Lese- und Schreibfunktionen

read- Funktionen

• Lese- und Schreibfunktionen (txt, csv)

Datenbankfunktionen

R

Wie werden Daten zwischen Excel und R ausgetauscht?

Page 6: R und MS Excel · MS Excel und R über XLConnect • Das Paket XLConnect wird durch die Mirai Solutions GmbH (Schweiz) zur Verfügung gestellt. • Das Paket XLConnect stellt leistungsfähige

Prozess und Statistik

Günter Faes, [email protected] 6

MS Excel und R über XLConnect

• Das Paket XLConnect wird durch die Mirai Solutions GmbH (Schweiz) zur Verfügung gestellt.

• Das Paket XLConnect stellt leistungsfähige Funktionen zum Lesen und Schreiben von Excel-Files zur Verfügung und läuft auf diversen Betriebssystemen. Die XLConnect nutzt dazu als unterlegtes Interface das Apache POI API.

• MS Excel muss auf dem Auswertesystem nicht installiert sein!

• XLConnect kann kostenfrei genutzt werden!

Page 7: R und MS Excel · MS Excel und R über XLConnect • Das Paket XLConnect wird durch die Mirai Solutions GmbH (Schweiz) zur Verfügung gestellt. • Das Paket XLConnect stellt leistungsfähige

Prozess und Statistik

Günter Faes, [email protected] 7

MS Excel und R über XLConnect

Wird das Paket XLConnect erfolgreich geladen, erhalten Sie folgende Ausgabe auf der R-Konsole:

Lade nötiges Paket: XLConnectJars

Lade nötiges Paket: rJava

XLConnect 0.2-4 by Mirai Solutions GmbH

http://www.mirai-solutions.com ,

http://miraisolutions.wordpress.com

>

Page 8: R und MS Excel · MS Excel und R über XLConnect • Das Paket XLConnect wird durch die Mirai Solutions GmbH (Schweiz) zur Verfügung gestellt. • Das Paket XLConnect stellt leistungsfähige

Prozess und Statistik

Günter Faes, [email protected] 8

XLConnect – ein einfaches Beispiel

In diesem einfachen Beispiel wird die Excel-Datei Test.xlsx …

Einfluss

Page 9: R und MS Excel · MS Excel und R über XLConnect • Das Paket XLConnect wird durch die Mirai Solutions GmbH (Schweiz) zur Verfügung gestellt. • Das Paket XLConnect stellt leistungsfähige

Prozess und Statistik

Günter Faes, [email protected] 9

XLConnect – ein einfaches Beispiel

… eingelesen:

> Datei <- "Test.xlsx"

> wb <- loadWorkbook(Datei)

# Einlesen der Excel-Datei in das Workbook-Objekt wb:

> Daten <- readWorksheet(wb, sheet = "Einfluss")

> Daten

Ereignis KPI Nr.1 Nr.2 Nr.3 Nr.4 Nr.5 Nr.6 Nr.7

1 0 10.16 2 79 0 55 46.06 35.22 2

2 0 12.11 1 29 0 55 204.23 4.40 2

3 1 14.68 2 61 0 29 59.91 69.24 5

4 1 14.88 1 70 0 65 91.00 13.55 2

5 0 14.88 2 24 0 60 161.11 1.22 4

6 0 14.88 2 63 0 60 28.38 7.03 2

7 0 15.01 2 78 0 60 69.70 13.98 2

8 1 15.06 2 87 0 36 30.22 34.08 3

9 1 15.12 1 62 1 20 13.17 15.60 3

10 1 15.22 2 84 0 .........

# Auslesen der Tabelle „Einfluss“:

Page 10: R und MS Excel · MS Excel und R über XLConnect • Das Paket XLConnect wird durch die Mirai Solutions GmbH (Schweiz) zur Verfügung gestellt. • Das Paket XLConnect stellt leistungsfähige

Prozess und Statistik

Günter Faes, [email protected] 10

XLConnect – ein einfaches Beispiel

Nun nehmen wir eine beispielhafte Änderung der Daten vor und …

… schreiben die Daten zurück in die Excel-Datei über die Funktion writeWorksheetToFile:

> writeWorksheetToFile(Datei, data=Daten, sheet="Einfluss", startRow=1,

startCol=1)

Page 11: R und MS Excel · MS Excel und R über XLConnect • Das Paket XLConnect wird durch die Mirai Solutions GmbH (Schweiz) zur Verfügung gestellt. • Das Paket XLConnect stellt leistungsfähige

Prozess und Statistik

Günter Faes, [email protected] 11

XLConnect – es wird komplexer!

Hilfreich ist es, wenn über die Excel- Namensmanagerfunktion für den Zellbereich ein Name vergeben wird. In diesem Beispiel wird der Name Merkmal5_6 für einen Zellbereich über die Spalten G (Nr.5) und H (Nr.6) vergeben! Achtung! Es können nicht die

gesamten Spalten ausgewählt werden!

XLConnect unterstützt auch das Einlesen von Tabellenbereichen!

Page 12: R und MS Excel · MS Excel und R über XLConnect • Das Paket XLConnect wird durch die Mirai Solutions GmbH (Schweiz) zur Verfügung gestellt. • Das Paket XLConnect stellt leistungsfähige

Prozess und Statistik

Günter Faes, [email protected] 12

XLConnect – es wird komplexer!

> Region <- readNamedRegion(wb, name =

"Merkmal5_6")

> Region

Nr.5 Nr.6

1 46.06 35.22

2 204.23 4.40

3 59.91 69.24

4 91.00 13.55

5 161.11 1.22

6 28.38 7.03

7 69.70 13.98

8 30.22 34.08

9 13.17 15.60

10 65.93 21.78

11 131.79 3.23

12 66.82 14.61

13 60.88 45.55

14

Über die Funktion readNameRegion() wird der in Excel namentlich festgelegte Zell- bereich Merkmal5_6 eingelesen.

Page 13: R und MS Excel · MS Excel und R über XLConnect • Das Paket XLConnect wird durch die Mirai Solutions GmbH (Schweiz) zur Verfügung gestellt. • Das Paket XLConnect stellt leistungsfähige

Prozess und Statistik

Günter Faes, [email protected] 13

XLConnect – es wird komplexer!

Änderungen in dem Zellbereich Region können über die Funktion writeNamedRegionToFile in die Excel-Datei zurückgeschrieben werden:

> writeNamedRegionToFile(Datei, name = "Merkmal5_6", data = Region)

Page 14: R und MS Excel · MS Excel und R über XLConnect • Das Paket XLConnect wird durch die Mirai Solutions GmbH (Schweiz) zur Verfügung gestellt. • Das Paket XLConnect stellt leistungsfähige

Prozess und Statistik

Günter Faes, [email protected] 14

XLConnect und Grafik!

Wir möchten aus den Daten Region einen Boxplot erzeugen und als Grafik in die Excel-Datei einfügen. Dazu wird der erzeugte Boxplot z. B. als png-Datei gespeichert:

> png(file = "Boxplot.png")

> boxplot(Region, main = "Boxplot der Merkmale 5 und 6")

> dev.off

Page 15: R und MS Excel · MS Excel und R über XLConnect • Das Paket XLConnect wird durch die Mirai Solutions GmbH (Schweiz) zur Verfügung gestellt. • Das Paket XLConnect stellt leistungsfähige

Prozess und Statistik

Günter Faes, [email protected] 15

Die Voraussetzung zum Einfügen der Grafik ist, dass in der Excel-Tabelle ein Bereich definiert wird, der die Grafik aufnimmt:

XLConnect und Grafik!

Page 16: R und MS Excel · MS Excel und R über XLConnect • Das Paket XLConnect wird durch die Mirai Solutions GmbH (Schweiz) zur Verfügung gestellt. • Das Paket XLConnect stellt leistungsfähige

Prozess und Statistik

Günter Faes, [email protected] 16

Die gespeicherte Boxplot.png-Datei wird über die Funktion addImage() in das Workbook- Objekt eingefügt …

> addImage(wb, filename = "Boxplot.png",name = "Boxplot", originalSize = TRUE)

… und als abschließender Schritt das Workbook-Objekt als Excel-Datei gespeichert:

> saveWorkbook(wb)

Haben wir erreicht, was wir wollten? Schauen wir mal …

XLConnect und Grafik!

Page 17: R und MS Excel · MS Excel und R über XLConnect • Das Paket XLConnect wird durch die Mirai Solutions GmbH (Schweiz) zur Verfügung gestellt. • Das Paket XLConnect stellt leistungsfähige

Günter Faes Koniferenstrasse 82 D-41542 Dormagen [email protected] +49-(0)151 127 223 46 +49-(0)2133 536 827 www.r-statistik.de

Die letzte Seite

©-Hinweis: Die hier verwendeten Fotos stammen von Fotolia.com