library(tidyverse)nasa02
Aufgabe
Viele Quellen berichten Klimadaten unserer Erde, z.B. auch National Aeronautics and Space Administration - Goddard Institute for Space Studies.
Von dieser Quelle beziehen wir diesen Datensatz.
Die Datensatz sind auf der Webseite wie folgt beschrieben:
Tables of Global and Hemispheric Monthly Means and Zonal Annual Means
Combined Land-Surface Air and Sea-Surface Water Temperature Anomalies (Land-Ocean Temperature Index, L-OTI)
The following are plain-text files in tabular format of temperature anomalies, i.e. deviations from the corresponding 1951-1980 means.
Global-mean monthly, seasonal, and annual means, 1880-present, updated through most recent month: TXT, CSV
Starten Sie zunächst das R-Paket tidyverse falls noch nicht geschehen.
Importieren Sie dann die Daten:
data_path <- "https://data.giss.nasa.gov/gistemp/tabledata_v4/GLB.Ts+dSST.csv"
d <- read_csv(data_path, skip = 1)Oder von der eigenen Festplatte, wenn schon heruntergeladen:
d <- read_csv("/Users/sebastiansaueruser/datasets/nasa02.csv")Wir lassen die 1. Zeile des Datensatzes aus (Argument skip), da dort Metadaten stehen, also keine Daten, sondern Informationen (Daten) zu den eigentlichen Daten.
Aufgaben
- Berechnen Sie die die Korrelation der Temperatur von Januar und Februar
- Berechnen Sie die die Korrelation der Temperatur von Januar und Februar pro Dekade
Hinweise:
- Sie müssen zuerst die Dekade als neue Spalte berechnen.
Lösung
Dekade berechnen:
d <-
d %>%
mutate(decade = round(Year/10))Korrelation:
d %>%
summarise(temp_cor = cor(Jan, Feb))| temp_cor |
|---|
| 0.9415313 |
Korrelation pro Dekade:
d_summarized <-
d %>%
group_by(decade) %>%
summarise(temp_cor = cor(Jan, Feb))| decade | temp_cor |
|---|---|
| 188 | 0.88 |
| 189 | 0.79 |
| 190 | 0.53 |
| 191 | 0.84 |
| 192 | 0.82 |
| 193 | 0.72 |
| 194 | 0.50 |
| 195 | 0.78 |
| 196 | 0.54 |
| 197 | 0.79 |
| 198 | 0.80 |
| 199 | 0.52 |
| 200 | 0.58 |
| 201 | 0.66 |
| 202 | 0.93 |
Zum Visualisieren gibt es viele Möglichkeiten. Wer kein Experte sein will, dem reicht es, eine Möglichkeit zu kennen.
Hier ist eine Visualisierung mit Hilfe des R-Pakets ggplot2:
d_summarized %>%
ggplot(aes(x = decade, y = temp_cor)) +
geom_point(color = "darkblue") +
geom_line(alpha = .7) +
scale_y_continuous(limits = c(0,1))
Alternativ können Sie zum Visualisieren der Daten z.B. das Paket ggpubr nutzen:
library(ggpubr)
ggscatter(d_summarized, x = "decade", y = "temp_cor", add = "reg.line")
Oder mit dem R-Paket DataExplorer:
library(DataExplorer)
d_summarized |>
plot_scatterplot(by = "temp_cor")
Die Korrelation der Temperaturen und damit die Ähnlichkeit der Muster hat im Laufe der Dekaden immer mal wieder geschwankt.
Falls Sie Teile der R-Syntax nicht kennen: Machen Sie sich nichts daraus. 😄
Categories:
- data
- eda
- lagemaße
- string