Problem: rxImport() - "Fehler XXXXXXXXX Bytes zuweisen."

Dies ist eine allgemeine Speicherzuweisungsfehler. Die üblichen ist Revolution R versucht, zu viele Zeilen gleichzeitig aus der Datendatei die Daten im Arbeitsspeicher für einen einzelnen Datenblock zu lesen.

Versuchen Sie zunächst die folgenden zu beheben:

Legen Sie einen kleinen Wert für das Argument 'RowsPerRead' in der rxImport()-Anweisung. Versuchen Sie, einen Wert "10000". Müssen Sie verschiedene Einstellungen für

Dies funktioniert gut und importiert die Daten möglichst schnell einen Wert zu suchen.

 

Wenn dies nicht unterstützen und die CSV-Datei viele Spalten, hilft es die Datenspalten 'X' importieren. Beispielsweise wenn Dataset als 5000 Spalten möglicherweise importieren 50 Spalten gleichzeitig Daten für 50 Spalten in eine neue Datei XDF und die vorhandene Datei XDF hinzufügen.

Hier wird R Beispielcode dazu:

varNames <- readLines("mycsv.txt", n=1) colsPerRead <- 50   ## Set how many columns to read from the csv file at a time. You may want to initially set this to a larger value, say 100. 
numReadsFromFile <- length(varNames/colsPerRead)

for (i in 1:numReadsFromFile) 

 tempdf <- rxImport(inData = "C:/MyRData/data.csv", varsToKeep = paste(varNames[((i-1)*colsPerRead)+1:(((i-1)*colsPerRead)+1)+colsPerRead], sep = ","), 
 rowsPerRead = 10000) 
 rxDataFrameToXdf(data = tempdf, ouFile = "C:/MyRData/data.xdf", append = "cols") 
}


Benötigen Sie weitere Hilfe?

Ihre Office-Fähigkeiten erweitern
Schulungen erkunden
Neue Funktionen als Erster erhalten
Microsoft Insider beitreten

War diese Information hilfreich?

Vielen Dank für Ihr Feedback!

×