我正在处理一个大型数据集(350 万行和 40 列),我需要清除一些值,以便在我开始围绕数据构建模型时计算我需要的其他参数。
问题是应用我一直在使用的 for 循环需要很长时间,所以我想尝试使用 ff 包。数据框称为数据,它由银行的一堆客户信息组成。它被导入为 .csv 文件。我需要做的是删除所有客户(标记为 Serial),如果他们的 AverageStanding 变量为负数
> ffd<-as.ffdf(data)
> lastserial = tail(ffd$Serial,1)
> for(k in 1:lastserial){
+ tempvecWith <- vector()
+ tempvecWith <- ffd[ffd$Serial==k, ]$AverageStanding
+ if(any(tempvecWith < 0)){
+ ffd_clean<- ffd[!ffd$Serial ==k, ]
+ }
+ }
这是我收到的错误:
Error in as.hi.integer(x, maxindex = maxindex, dim = dim, vw = vw, pack = pack) :
NAs in as.hi.integer
关于如何避免这些错误的任何想法?