Ich verwende R's ff
Paket und ich habe einige ffdf
Objekte (Abmessungen etwa 1,5 m x 80 m), mit denen ich arbeiten muss. Ich habe einige Schwierigkeiten, meinen Kopf um die effiziente Slicing / Würfeln Operationen aber bekommen.
Ich habe zum Beispiel zwei Integer-Spalten mit den Namen "YEAR" und "AGE", und ich möchte eine Tabelle mit AGE erstellen, wenn das YEAR 2005 ist.
Ein Ansatz ist dieser:
ffwhich <- function(x, expr) {
b <- bit(nrow(x))
for(i in chunk(x)) b[i] <- eval(substitute(expr), x[i,])
b
}
bw <- ffwhich(a.fdf, YEAR==1999)
answer <- table(a.fdf[bw, "AGE"])
Le site table()
Operation ist schnell, aber der Aufbau des Bitvektors ist recht langsam. Hat jemand eine Empfehlung, wie man das besser machen kann?