data("penguins", package = "palmerpenguins") # ggf. das Paket vorab installieren
na-per-col
R
datawrangling
na
string
Aufgabe
Zählen Sie die Anzahl der fehlenden Werte pro Spalte im Datensatz penguins
.
Zeigen Sie einen prägnanten Weg.
Hinweise:
- Orientieren Sie sich im Übrigen an den allgemeinen Hinweisen des Datenwerks.
Lösung
Important
Wie oft in einer Sprache, gibt es mehrere Wege, eine Sache auszudrücken. So auch in R. Im Folgenden sind mehrere Lösungen vorgeschlagen. Sie müssen nicht alle kennen. Es reicht, wenn Sie eine einzige kennen (es sei denn, Sie wollen ein Experte sein oder werden). Betrachten Sie es als eine Frage des Geschmacks: Das Menü ist vor Ihnen ausgebreitet, und Sie greifen zu dem, was Ihnen am meisten zusagt. \(\square\)
library(tidyverse)
library(easystats)
library(skimr)
Weg 1
|>
penguins ::map_int(~ sum(is.na(.))) purrr
species island bill_length_mm bill_depth_mm
0 0 2 2
flipper_length_mm body_mass_g sex year
2 2 11 0
Weg 2
colSums(is.na(penguins))
species island bill_length_mm bill_depth_mm
0 0 2 2
flipper_length_mm body_mass_g sex year
2 2 11 0
Weg 3
describe_distribution(penguins)
Variable | Mean | SD | IQR | Range | Skewness | Kurtosis | n | n_Missing
-----------------------------------------------------------------------------------------------------------
bill_length_mm | 43.92 | 5.46 | 9.30 | [32.10, 59.60] | 0.05 | -0.88 | 342 | 2
bill_depth_mm | 17.15 | 1.97 | 3.12 | [13.10, 21.50] | -0.14 | -0.91 | 342 | 2
flipper_length_mm | 200.92 | 14.06 | 23.25 | [172.00, 231.00] | 0.35 | -0.98 | 342 | 2
body_mass_g | 4201.75 | 801.95 | 1206.25 | [2700.00, 6300.00] | 0.47 | -0.72 | 342 | 2
year | 2008.03 | 0.82 | 2.00 | [2007.00, 2009.00] | -0.05 | -1.50 | 344 | 0
Allerdings berücksichtigt describe_distribution
nur metrische Spalten.
Weg 4
summary(penguins)
species island bill_length_mm bill_depth_mm
Adelie :152 Biscoe :168 Min. :32.10 Min. :13.10
Chinstrap: 68 Dream :124 1st Qu.:39.23 1st Qu.:15.60
Gentoo :124 Torgersen: 52 Median :44.45 Median :17.30
Mean :43.92 Mean :17.15
3rd Qu.:48.50 3rd Qu.:18.70
Max. :59.60 Max. :21.50
NA's :2 NA's :2
flipper_length_mm body_mass_g sex year
Min. :172.0 Min. :2700 female:165 Min. :2007
1st Qu.:190.0 1st Qu.:3550 male :168 1st Qu.:2007
Median :197.0 Median :4050 NA's : 11 Median :2008
Mean :200.9 Mean :4202 Mean :2008
3rd Qu.:213.0 3rd Qu.:4750 3rd Qu.:2009
Max. :231.0 Max. :6300 Max. :2009
NA's :2 NA's :2
Weg 5
skim(penguins)
Name | penguins |
Number of rows | 344 |
Number of columns | 8 |
_______________________ | |
Column type frequency: | |
factor | 3 |
numeric | 5 |
________________________ | |
Group variables | None |
Variable type: factor
skim_variable | n_missing | complete_rate | ordered | n_unique | top_counts |
---|---|---|---|---|---|
species | 0 | 1.00 | FALSE | 3 | Ade: 152, Gen: 124, Chi: 68 |
island | 0 | 1.00 | FALSE | 3 | Bis: 168, Dre: 124, Tor: 52 |
sex | 11 | 0.97 | FALSE | 2 | mal: 168, fem: 165 |
Variable type: numeric
skim_variable | n_missing | complete_rate | mean | sd | p0 | p25 | p50 | p75 | p100 | hist |
---|---|---|---|---|---|---|---|---|---|---|
bill_length_mm | 2 | 0.99 | 43.92 | 5.46 | 32.1 | 39.23 | 44.45 | 48.5 | 59.6 | ▃▇▇▆▁ |
bill_depth_mm | 2 | 0.99 | 17.15 | 1.97 | 13.1 | 15.60 | 17.30 | 18.7 | 21.5 | ▅▅▇▇▂ |
flipper_length_mm | 2 | 0.99 | 200.92 | 14.06 | 172.0 | 190.00 | 197.00 | 213.0 | 231.0 | ▂▇▃▅▂ |
body_mass_g | 2 | 0.99 | 4201.75 | 801.95 | 2700.0 | 3550.00 | 4050.00 | 4750.0 | 6300.0 | ▃▇▆▃▂ |
year | 0 | 1.00 | 2008.03 | 0.82 | 2007.0 | 2007.00 | 2008.00 | 2009.0 | 2009.0 | ▇▁▇▁▇ |
Categories:
- R
- wrangling
- na
- string