Julia-Versionshinweis:

Julia ist zurzeit eine sehr lebhafte Programmiersprache und von den Paketentwicklern abhängig. Das kann Anpassungen mit sich bringen und dass Julia und JuliaPro verschiedene Entwicklungsstände zeigen. Dadurch besteht die Möglichkeit, dass Sie Warnmeldungen erhalten, dass Funktionen oder Funktionsaufrufe nicht mehr aktuell (deprecated) sind.

Hier ein Beispiel:

  • ┌ Warning: `getindex(df::DataFrame, col_ind::ColumnIndex)` is deprecated, use `df[!, col_ind]` instead.
    │   caller = (::getfield(StatsModels, Symbol("##18#19")){DataFrame})(::Symbol) at modelframe.jl:145
    └ @ StatsModels C:\Users\guent\.juliapro\JuliaPro_v1.2.0-1\packages\StatsModels\pBxdt\src\modelframe.jl:145
    ┌ Warning: `getindex(df::DataFrame, col_ind::ColumnIndex)` is deprecated, use `df[!, col_ind]` instead.
    │   caller = check_non_redundancy!(::StatsModels.Terms, ::DataFrame) at modelframe.jl:84
    └ @ StatsModels C:\Users\guent\.juliapro\JuliaPro_v1.2.0-1\packages\StatsModels\pBxdt\src\modelframe.jl:84
    ...

Ich versuche im Skript diesen Anpassungen zu folgen. Achten Sie deswegen  bitte auf Versionshinweise zum jeweiligen Kapitel! Diese gelten - wenn  die geänderten Pakete Anwendung finden - auch für die Folgekapitel.

Hinweis zum Julia-Skript:

Im Julia-Skript finden Sie möglicherweise auskommentierte Code-Zeilen (z. B. # show(anova(LinReg))), die als Ausführungsvariante dienen. Zum Ausführen löschen Sie einfach das Kommentarzeichen #.

Die Julia-Skripts können im Julia-Terminal mit include(“Skript-Bezeichnung.jl”)geladen und ausgeführt werden.

Bitte prüfen Sie immer die heruntergeladenen Dateien mit einem aktuellen Virenscanner auf potentielle Schadsoftware. Siehe auch den Haftungshinweis im Impressum!

Kapitel

Datensatz

Beschreibung / Skript

4.1

Daten.csv

 Juno / Atom

Eine einfache csv-Datei zum Kennenlernen der Juno-Funktionalitäten

5.1

Text.txt

Daten lesen

Eine einfache txt-Datei als Kapitel- Beispieldatei und Skript aus Tabelle 9: Daten_zeilenweise_lesen

5.2

 

Daten speichern

1. Skript: Daten speichern Beispiel 1.jl
2. Skript: Daten speichern Beispiel 2.jl

5.3

Normalverteilung.csv

Daten im CSV-Format ...

Anpassungen aufgrund einer höheren CSV-Paket-Version:

Ab der CSV-Paket-Version 0.7 muss zum Lesen einer CSV-Datei und dem Speichern als DataFrame von

    dTabelle = CSV.read(datei, header = 1, delim = ';',
    decimal = ',', normalizenames = true )
auf
    using DataFrames
    ....
    dTabelle = DataFrame!(CSV.read(datei, header = 1, delim = ';',
    decimal = ',', normalizenames = true ))

geändert werden.

1. Skript: CSV lesen 1.jl
2. Skript: CSV lesen schreiben.jl

9

 

Datenbank

Zur Ausprägung Ihrer MySQL-Datenbank das Beispiel-Skript MySQL Beispiel.jl.

10.1

Rotwein.csv

Rotwein missing.csv

Weisswein.csv

Die Beispieldatensätze Rotwein und Weißwein als CSV-Datei

Quelle:
P. Cortez, A. Cerdeira, F. Almeida,
T. Matos and J. Reis.
Modeling wine preferences by data mining
from physicochemical properties.
In Decision Support Systems,
Elsevier, 47(4):547-553. ISSN: 0167-9236.

10.2

 

Deskriptive Statistik

1. Skript: CVS lesen Rotwein.jl
2. Skript: Deskriptive Statistik.jl
3. Skript: Boxplot.jl

Anpassungen aufgrund einer höheren Julia-Version:

  • Geänderter Aufruf bestimmter Spalten eines DataFrames:
  • Alt: Rotwein[:residual_sugar]
  • Neu: Rotwein[!,:residual_sugar]

Diese Anpassung gilt für alles Skripts, die das Pakte DataFrames verwenden!

10.4.1

 

QQ-Plot

Julia-Skript zur Erstellung eines QQ-Plots: QQ Plot.jl

10.4.6

ApproxNormalverteilung.csv

Boxenstopp Verteilung

Julia-Skript: ApproxNormalverteilung.jl

Zufallsdaten x die mit dem Mittelwert 0 und der Standardabweichung 1 an eine Normalverteilung angenähert sind.

10.4.7

NormalVergleich.csv

F-Test

NormalVergleich.csv beinhaltet die drei Vektoren x, y und z, die mit 100 Zufallszahlen belegt sind (F-Test, t-Test)
Julia-Skript: F-Test.jl

10.4.9

Chargen.csv

Varianzanalyse ANOVA

Chargen.csv beinhaltet die Daten zur ANOVA.
Julia-Skript: ANOVA.jl

10.5.1

 

Einfaches lineares Modell

Julia-Skript: LinModell.jl

Anpassungen aufgrund einer höheren Julia-Version:

    Im Zusammenhang mit DataFrames-Funktionen:

  • Alt: show(Rotwein[12:13])
  • Neu: show(Rotwein[:,12:13])

 

10.5.2

 

Multiple lineare Regression

Skript: MLRModel.jl

10.5.3

shuttle.csv

Verallgemeinerte lineare Modelle (GLM)

Julia-Skript: GLM.jl

Anpassungen aufgrund einer höheren Julia-Version:

  • Das DataFrame shuttle wird im Code geändert und um das zu ermöglichen, muss das Argument copycols = true der Funktion CSV.read() zugefügt werden.

10.6.1

 

Hauptkomponentenanalyse (PCA)

Julia-Skript: PCA.jl

(Hier ist die Einstellung des R-Home-Verzeichnisses wichtig. Siehe Buch Seite 274, Fußnote 145! )

Korrektur des RCall-Aufrufes zur Darstellung des fa.diagrams:

    R"fa.diagram($PCA_Modell, cut = 0.5, cex = 0.8, rsize = 0.5)"

 

10.6.2

 

Faktorenanalyse

Julia-Skript: FA.jl

(Hier ist die Einstellung des R-Home-Verzeichnisses wichtig. Siehe Buch Seite 274, Fußnote 145! )

10.6.3

Rotwein HK.csv

Clusteranalyse

Julia-Skript: Cluster.jl

Anpassungen aufgrund einer höheren Julia-Version:

  • Explizite Angabe der Datenanordnung zur Distanzberechnung:
    DistanzMatrix =  pairwise(Euclidean(), Cluster_Daten, dims = 2)
     
  • Eindeutigere Argument-Übergabe zur Clusterungsmethode:
    Cluster = hclust(DistanzMatrix, linkage = :ward)

10.6.4

Kyphosis.csv

Entscheidungsbaum

Beispiel Kyphosis:
Julia-Skript: Entscheidungsbaum.jl

Beispiel Rotwein:
Skript: Entscheidungsbaum Rotwein.jl
Beispiel für einen trainierten Baum: Entscheidungsbaum Rotwein.txt
Testergebnis: Rotwein Entscheidungsbaum.xlsx

10.6.5

Rotwein.csv

Maschinelles Lernen mit Flux

Julia-Skript: Flux Rotwein.jl

Julia-Skript-Anpassungen aufgrund Julia 1.3.1, Flux 10.1: Flux Rotwein Flux10_1.jl

Einen verständlichen Literaturhinweis zur Mathematik der Neuronalen Netze...

 

... und weiterführende Literatur:

 

 

11

NormalVergleich.csv

Funktionen schreiben

Skript mit integrierter FTest-Funktion: FTest integriert.jl
Skript mit inkludierter FTest-Funktion:  Test FTest.jl
Skript der F-Test-Funktion FTest(): FTest.jl
Hinweis: Das FTest.jl-Skript muss im gleichen Verzeichnis wie das Test_FTest.jl stehen!

 

Nach oben!

 

 

Das Buch bei Amazon:

 

Das Video Datenanalyse mit Julia gibt eine kurze Übersicht der im Buch behandelten Themenbereich, ist aber natürlich nicht vollständig.

Das Video nVIDIA Jetson Nano und Julia zeigt, dass Julia auch auf diesem System genutzt werden kann und wie beim maschinellen Lernen mit Flux die Jetson-Nano-Stärke, die GPU, ausgenutzt wird (Beispieldatensatz Rotwein). 

Datenanalyse mit Julia

Einstieg in die Datenanalyse mit der Programmiersprache Julia,
Datenbeispiele zum Buch

Julia_Datenanalyse