R-Code ist oft schnell zu schreiben, aber nicht immer schnell genug in der Ausführung. Eine Methode, dem abzuhelfen, besteht darin, R-Code zu parallelisieren, d. h. mehrere Prozessorkerne oder mehrere Arbeiter einzusetzen.
Zunächst initialisieren wir die Arbeiter mit makeCluster(). Dann schreiben wir eine Funktion, die eine unabhängige Variable als Eingabe-Parameter annimmt, daraus eine Regressionsformel bildet (die abhängige Variable bleibt über alle Modelle gleich) und als Ergebnis das summary (die Zusammenfassung) des Modells zurückgibt. Dann können wir 200 Modelle mit einem Einzeiler, einem simplen lapply-Aufruf erstellen.
Zur Parallelisierung müssen wir lediglich lapply() durch clusterApply() ersetzen. Eine kleine Falle besteht darin, dass die Arbeiter mittels clusterExport() Daten erhalten müssen, da sie nicht auf das global environment zugreifen.
Mit bench::mark() ermitteln wir den Geschwindigkeitsgewinn numerisch und grafisch.
R-Code:
[ Ссылка ]
Thumbnail image: Chait Goli from Pexels
Blog: [ Ссылка ]
R Schulungen: [ Ссылка ]
Twitter: [ Ссылка ]
Facebook: [ Ссылка ]
Statistiken zu Musik-Charts:
[ Ссылка ]
Ещё видео!