Ich muss eine Matrix mit 80000 Zeilen und 80000 Spalten erstellen. Aber nach dem Lesen von Rbloggern habe ich erfahren, dass die Anzahl der Elemente in einer Matrix 2 ^ 31 - 1 nicht überschreiten kann. Mein Plan, dieses Problem für meinen speziellen Algorithmus zu vermeiden, besteht darin, einen Datenrahmen anstelle einer Matrix zu verwenden. Gibt es eine Möglichkeit, einen leeren Datenrahmen der Dimension 80000 x 80000 zu erstellen, ohne zuerst eine Matrix zu erstellen und dann mit as.data.frame wie unten in einen dat.frame umzuwandeln?
%Vor%Sie könnten einen leeren Datenrahmen der Größe 80.000 x 80.000 wie folgt konstruieren:
%Vor% Im Grunde erstellen Sie eine Liste mit jeder Spalte des Datenrahmens, den Sie erstellen möchten (Ich habe die Liste mit replicate
mit simplify=FALSE
erstellt) und dann erstellen Sie daraus einen Datenrahmen mit do.call
und dem data.frame
Funktion.
Einige Anmerkungen:
Obwohl die Zuweisung einer Matrix dieser Größe bei der Zuweisung in 64-Bit-Linux (R-Version 3.2.0) nicht fehlgeschlagen ist, scheinen grundlegende Operationen nicht zu funktionieren:
%Vor%