2017-08-22 1 views
0

Nun, ich bin neugierig auf ein Problem, das hilfreich und zeitsparend wäre, wenn es nicht das Ende der Welt ist.Partitionierung R-Skript und/oder R-Sitzungen (Umgebung)

Ich recherchierte ein bisschen, aber ich konnte nicht finden, was ich buchstäblich will. Auch Running multiple R scripts/sessions Ich habe diesen Link überprüft, aber es hilft mir auch nicht viel.

Die Situation ist, dass ich einen großen Datensatz habe (die Testdaten, die ich versuche zu verwenden hat ungefähr 6.5m Reihen und 50 Spalten, ich habe auch Schwierigkeiten, den Datensatz in R zu implementieren, ich benutze jetzt 60k Zeilen für die Analyse und für statistische Modelle (Ich versuche zu sehen, wie die Daten manipuliert werden können und ihr Verhalten verstehen, und hoffentlich möchte ich diese Modelle und Manipulationen all das, was ich mit dem großen Datensatz gemacht habe, integrieren, selbst wenn nicht alle 6,5 m Zeilen, 1 2m ok für mich, wenn ich kann.

Wie auch immer, ein anderes großes Problem ist meine R-Umgebung.Da die Daten so enorm sind, erfordert es Sorgfalt und große Arbeit.Das Code-Skript ist wie 3500 Zeilen und es sind nicht einmal 15% Das Problem besteht darin, neue Datensätze zu erstellen, neue Modelle zuzuweisen, die Angemessenheit der Modelle zu überprüfen und neue Modelle zu erstellen. usw. alles kostet mich ein neues Zeug in der Umgebung, und meine Umgebung ist wie 750mb (die R Sitzung/Profil). Ich hoffte, dass ich die Größe des Umgebungskrams (das Profil) verringern könnte, wenn ich die R-Skripte oder -Umgebungen teile.

Alle Ideen wären großartig. Für jede Hilfe approbiert.

Bearbeiten: Nach dem Erstellen eines sauberen Skripts und dem Starten mit einer sauberen Umgebung wurde die Datenbankimplementierung fehlerfrei ausgeführt. Nur für diejenigen, die dieses Implementierungsproblem wie ich leiden. Das nicht zu sagen, ist jedoch der einzige und genaue Weg.

+1

"meine Umgebung ist wie 750mb", die eher klein ist. Ihre Frage ist nicht sehr klar und ein bisschen weitschweifig. Ich schlage vor, dass Sie sich mit dem Aufbau eines Pakets befassen (was Sie auch zwingen würde, dem Paradigma der funktionalen Programmierung zu folgen und das bei Ihrer überladenen globalen Umgebung helfen könnte). – Roland

+1

6,5 Millionen x 50 ist nicht wirklich enorm. Wenn Ihnen das schon Probleme bereitet, würde ich Ihnen einen kurzen Abstecher zum Elektronikladen empfehlen, um mehr RAM zu kaufen. – Roland

+0

Ich stimme zu, ich hatte einzelne Plot-Objekte in der Größe von mehreren GB. Wenn Sie große Datenmengen in R verarbeiten, benötigen Sie mindestens 16 GB RAM. – LAP

Antwort

0

Für dieses Problem schreibe ich normalerweise Skripts, die einen bestimmten Arbeitsbereich erzeugen, und dann ein anderes Skript, das Pfad zu allen Skripts und zu den gespeicherten Arbeitsbereichen enthält.

dieses Skript Stellen Sie sich vor:

## Dataset x 
# Run script to create dataset x 
source("pathtoscript.R") 

# Save dataset x environment 
save.image("pathtodatasetx.Rdata") 

# Load dataset x environment 
load("pathtodatasetx.Rdata") 

So kann ich schnell laufen kann und eine Umgebung speichern, wenn ich irgendwelche Änderungen vorgenommen haben, oder es einfach in meinen aktuellen Sitzung laden.