1. Nauka
  2. /
  3. Kursy
  4. /
  5. Programowanie równoległe w R

Connected

ćwiczenie

Dzienne zakresy cen

Dzienny zakres ceny akcji to dobry wskaźnik jej zmienności rynkowej.

Pracujesz w firmie inwestycyjnej jako analityk danych. Twój szef chce obliczyć dzienny zakres cen akcji dziesięciu największych firm technologicznych na świecie. Masz listę plików CSV, stock_list, z dziennymi cenami akcji. Dla każdego pliku chcesz dodać kolumnę zakresu. Młodszy analityk danych napisał w tym celu następujący kod R:

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)
}

Chcesz uruchomić ten kod równolegle na dedykowanym komputerze Apple Mac i skorzystać z klastra FORK, aby uzyskać lepsze wyniki. Pakiet parallel jest już wczytany w twoim środowisku.

Instrukcje

100 XP
  • Korzystając z dostarczonego kodu, utwórz funkcję add_range(), która przyjmie ścieżkę do pliku jako argument i doda do niego kolumnę range.
  • Utwórz klaster FORK złożony z czterech rdzeni.
  • Zastosuj funkcję add_range() równolegle do każdego elementu listy stock_list.
  • Zatrzymaj klaster.