【发布时间】:2016-05-24 05:45:48
【问题描述】:
我有一个 ffdf 对象,它有 200K 行和 12K 列。
这是来自与另一个 ffdf 对象的 LEFT JOIN,因此在不同的列中有很多 NA。
如何将所有 NA 替换为特定值(例如,FALSE,因为 LEFT JOIN 中的附加列都是 LOGICAL)?
我可以成功地在一列上使用以下语法来替换该列中的所有 NA(“coltest”):
ffdfOut$coltest <- with(ffdfOut, ifelse(is.na(coltest), FALSE, coltest))
但以下循环:
cnamesLogical) <- colnames(ffdfOut)[12:12000]
for(colname in cnamesLogical)
{
ffdfOut[, colname] <- with(ffdfOut, ifelse(is.na(colname), FALSE, colname))
}
给我错误:
with.ffdf(ffdfOut, ifelse(is.na(colname), FALSE, colname)) 出错:'with.ffdf' 只返回 nrow(data) 等长的 ff 对象
感谢您对此的任何帮助!
【问题讨论】: