LoslegenKostenlos loslegen

Tägliche Preisspannen

Die tägliche Spanne des Aktienkurses ist ein guter Indikator für die Marktvolatilität.

Du arbeitest als Data Analyst bei einer Investmentfirma. Deine Chefin möchte die tägliche Spanne für die Aktien der zehn größten Tech-Unternehmen der Welt berechnen. Du hast eine Liste von CSV-Dateien, stock_list, mit den täglichen Aktienkursen. Für jede Datei möchtest du eine Spalte für die Spanne hinzufügen. Der Junior Data Analyst hat dazu den folgenden R-Code geschrieben:

for (file in file_list) {

  df <- read.csv(file)
  df$range <- 0
  for (r in 1:nrow(df)) {
    df$range[r] <- df$High[r] - df$Low[r]
  }
  write.csv(df, file)
}

Du willst diesen Code auf einem dedizierten Apple-Mac parallel ausführen und dafür einen FORK-Cluster verwenden, um bessere Ergebnisse zu erzielen. Das Paket parallel ist in deinem Workspace geladen.

Diese Übung ist Teil des Kurses

Paralleles Programmieren in R

Kurs anzeigen

Anleitung zur Übung

  • Verwende den bereitgestellten Code, um eine Funktion add_range() zu erstellen, die einen Dateipfad als Argument nimmt und dieser Datei eine Spalte range hinzufügt.
  • Erstelle einen FORK-Cluster mit vier Kernen.
  • Wende add_range() parallel auf jedes Element von stock_list an.
  • Stoppe den Cluster.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# Make a function out of existing code
add_range <- function (file) {
  ___
  
  
  
  
  
}
# Make FORK cluster of four cores
cluster <- makeCluster(___, type = "___")
# Apply add_range to stock_list in parallel
out <- parLapply(___, ___, ___)
# Stop cluster
___
Code bearbeiten und ausführen