0

I've experienced the write error from ff package. This answer suggests that the solution could be to overload the functions "[<-.ffdf" and "[.ffdf". Could somebody elaborate this in more details, or at least suggest what I need to figure out to understand what is necessary to accomplish this. Keep in mind that this the question comes from a novice.

Community
  • 1
  • 1
H13
  • 1
  • 2

2 Answers2

2

Just rewrite the "[<-.ffdf" and "[.ffdf" functions.

require(ff)
## For the assignment
get("[<-.ffdf")
args(get("[<-.ffdf"))
"[<-.ffdf" <- function (x, i, j, value){
  ## put your code in here and make sure it does not open too many ff files which are in x
}
## For the getter
args(get("[.ffdf"))
"[.ffdf" <- function (x, i, j, drop = ncols == 1){
  ## put your code in here and make sure it does not open too many ff files which are in x
}
0

An alternate solution would be to increase your systems setting to allow for more files to be open simultaneously. That system setting is the limiting factor for the ff data frame. I explained how to change this setting on SO here.

Community
  • 1
  • 1
Chris Townsend
  • 3,042
  • 27
  • 31