Big Data Analytics - Diagramme und Grafiken

Der erste Ansatz zur Analyse von Daten besteht darin, sie visuell zu analysieren. Die Ziele dabei sind normalerweise das Finden von Beziehungen zwischen Variablen und univariaten Beschreibungen der Variablen. Wir können diese Strategien wie folgt aufteilen:

  • Univariate Analyse
  • Multivariate Analyse

Univariate grafische Methoden

Univariateist ein statistischer Begriff. In der Praxis bedeutet dies, dass wir eine Variable unabhängig von den übrigen Daten analysieren möchten. Die Grundstücke, die dies effizient ermöglichen, sind:

Box-Plots

Box-Plots werden normalerweise zum Vergleichen von Verteilungen verwendet. Es ist eine großartige Möglichkeit, visuell zu prüfen, ob es Unterschiede zwischen den Verteilungen gibt. Wir können sehen, ob es Unterschiede zwischen dem Preis von Diamanten für verschiedenen Schliff gibt.

# We will be using the ggplot2 library for plotting
library(ggplot2)  
data("diamonds")  

# We will be using the diamonds dataset to analyze distributions of numeric variables 
head(diamonds) 

#    carat   cut       color  clarity  depth  table   price    x     y     z 
# 1  0.23    Ideal       E      SI2    61.5    55     326     3.95  3.98  2.43 
# 2  0.21    Premium     E      SI1    59.8    61     326     3.89  3.84  2.31 
# 3  0.23    Good        E      VS1    56.9    65     327     4.05  4.07  2.31 
# 4  0.29    Premium     I      VS2    62.4    58     334     4.20  4.23  2.63 
# 5  0.31    Good        J      SI2    63.3    58     335     4.34  4.35  2.75 
# 6  0.24    Very Good   J      VVS2   62.8    57     336     3.94  3.96  2.48 

### Box-Plots
p = ggplot(diamonds, aes(x = cut, y = price, fill = cut)) + 
   geom_box-plot() + 
   theme_bw() 
print(p)

Wir können in der Darstellung sehen, dass es Unterschiede in der Verteilung des Diamantenpreises in verschiedenen Schliffarten gibt.

Histogramme

source('01_box_plots.R')

# We can plot histograms for each level of the cut factor variable using 
facet_grid 
p = ggplot(diamonds, aes(x = price, fill = cut)) + 
   geom_histogram() + 
   facet_grid(cut ~ .) + 
   theme_bw() 

p  
# the previous plot doesn’t allow to visuallize correctly the data because of 
the differences in scale 
# we can turn this off using the scales argument of facet_grid  

p = ggplot(diamonds, aes(x = price, fill = cut)) + 
   geom_histogram() + 
   facet_grid(cut ~ ., scales = 'free') + 
   theme_bw() 
p  

png('02_histogram_diamonds_cut.png') 
print(p) 
dev.off()

Die Ausgabe des obigen Codes lautet wie folgt:

Multivariate grafische Methoden

Multivariate grafische Methoden in der explorativen Datenanalyse haben das Ziel, Beziehungen zwischen verschiedenen Variablen zu finden. Es gibt zwei Möglichkeiten, um dies zu erreichen, die üblicherweise verwendet werden: Zeichnen einer Korrelationsmatrix numerischer Variablen oder einfaches Zeichnen der Rohdaten als Matrix von Streudiagrammen.

Um dies zu demonstrieren, verwenden wir den Diamanten-Datensatz. Öffnen Sie das Skript, um dem Code zu folgenbda/part2/charts/03_multivariate_analysis.R.

library(ggplot2)
data(diamonds) 

# Correlation matrix plots  
keep_vars = c('carat', 'depth', 'price', 'table') 
df = diamonds[, keep_vars]  
# compute the correlation matrix 
M_cor = cor(df) 

#          carat       depth      price      table 
# carat 1.00000000  0.02822431  0.9215913  0.1816175 
# depth 0.02822431  1.00000000 -0.0106474 -0.2957785 
# price 0.92159130 -0.01064740  1.0000000  0.1271339 
# table 0.18161755 -0.29577852  0.1271339  1.0000000  

# plots 
heat-map(M_cor)

Der Code erzeugt die folgende Ausgabe -

Dies ist eine Zusammenfassung, die uns sagt, dass es eine starke Korrelation zwischen Preis und Caret gibt und nicht viel zwischen den anderen Variablen.

Eine Korrelationsmatrix kann nützlich sein, wenn wir eine große Anzahl von Variablen haben. In diesem Fall wäre das Zeichnen der Rohdaten nicht praktikabel. Wie bereits erwähnt, können die Rohdaten auch angezeigt werden -

library(GGally)
ggpairs(df)

Wir können in der Darstellung sehen, dass die in der Wärmekarte angezeigten Ergebnisse bestätigt sind, es gibt eine Korrelation von 0,922 zwischen den Preis- und Karatvariablen.

Es ist möglich, diese Beziehung im Preis-Karat-Streudiagramm zu visualisieren, das sich im (3, 1) -Index der Streudiagrammmatrix befindet.