Der Erste Schritt, nachdem man ein Datenset geladen hat, besteht oft darin erstmal ein Überblick zu erhalten was für Daten da eigentlich drin stehen. Das ist typischerweise nix, was man in einer Publikation o.ä erwähnt, aber auch hierfür gibt es eine Reihe von Möglichkeiten, die die Arbeit sehr erleichtern können und in unterschiedlichen Situationen hilfreich sind.
Wenns schnell gehen muss: Base-R names, table und summary
Wenn ich für jedes mal, das ich names(table) , gefolgt von table(data$collumn) oder summary(table) getippt habe, einen Cent bekommen hätte, hätte ich sehr viele Cent. Auch heute noch nutze ich diese drei Funktionen als Startpunkt und zwischendurch immer wieder, um mir die Variablennamen oder Faktorstufen anzeigen zu lassen.
library(ggplot2) # nur für das Datensetdata(diamonds)names(diamonds)
carat cut color clarity depth
Min. :0.2000 Fair : 1610 D: 6775 SI1 :13065 Min. :43.00
1st Qu.:0.4000 Good : 4906 E: 9797 VS2 :12258 1st Qu.:61.00
Median :0.7000 Very Good:12082 F: 9542 SI2 : 9194 Median :61.80
Mean :0.7979 Premium :13791 G:11292 VS1 : 8171 Mean :61.75
3rd Qu.:1.0400 Ideal :21551 H: 8304 VVS2 : 5066 3rd Qu.:62.50
Max. :5.0100 I: 5422 VVS1 : 3655 Max. :79.00
J: 2808 (Other): 2531
table price x y
Min. :43.00 Min. : 326 Min. : 0.000 Min. : 0.000
1st Qu.:56.00 1st Qu.: 950 1st Qu.: 4.710 1st Qu.: 4.720
Median :57.00 Median : 2401 Median : 5.700 Median : 5.710
Mean :57.46 Mean : 3933 Mean : 5.731 Mean : 5.735
3rd Qu.:59.00 3rd Qu.: 5324 3rd Qu.: 6.540 3rd Qu.: 6.540
Max. :95.00 Max. :18823 Max. :10.740 Max. :58.900
z
Min. : 0.000
1st Qu.: 2.910
Median : 3.530
Mean : 3.539
3rd Qu.: 4.040
Max. :31.800
Wenn das Datenset nur aus wenigen Variablen wie hier besteht, reicht das auch vollkommen aus.
Wenn man kein Codebook hat sjdata
Das Paket sjPlot enthält viele sehr praktische Funktionen, eine davon ist aber definitiv view_df(). Im Prinzip erzeugt diese Funktion die ersten Spalten eines Codebooks. Vorraussetzung ist natürlich, dass die Daten bereits diese Informationen enthalten…
library(sjPlot)
Install package "strengejacke" from GitHub (`devtools::install_github("strengejacke/strengejacke")`) to load all sj-packages at once!
view_df(diamonds)
Data frame: diamonds
ID
Name
Label
Values
Value Labels
1
carat
range: 0.2-5.0
2
cut
Fair
Good
Very Good
Premium
Ideal
3
color
D
E
F
G
H
I
J
4
clarity
I1
SI2
SI1
VS2
VS1
VVS2
VVS1
IF
5
depth
range: 43.0-79.0
6
table
range: 43.0-95.0
7
price
range: 326-18823
8
x
range: 0.0-10.7
9
y
range: 0.0-58.9
10
z
range: 0.0-31.8
Wenn man auch Missings und Verteilungen checken mag - skim
Gerade wenn man auch viele numerische Variablen hat, möchte man zusätzlich natürlich oft auch noch einen ersten ganz groben Überblick über die Verteilungen etc bekommen. Hierfür ist das Paket skimr und die passend benannte Funktion skim() sehr zu empfehlen. Diese nutzt sehr gut mini-Histogramme.