相关疑难解决方法(0)

处理R中缺失/不完整的数据是否有掩盖但不删除NA的功能?

正如您期望的DSL用于数据分析,R很好地处理丢失/不完整的数据,例如:

许多R函数都有一个na.rm标志,当设置为TRUE时,删除NA:

>>> v = mean( c(5, NA, 6, 12, NA, 87, 9, NA, 43, 67), na.rm=T)
>>> v
      (5, 6, 12, 87, 9, 43, 67)
Run Code Online (Sandbox Code Playgroud)

但是如果你想在函数调用之前处理NA ,你需要做这样的事情:

从矢量中删除每个'NA':

vx = vx[!is.na(a)]
Run Code Online (Sandbox Code Playgroud)

从矢量中删除每个'NA'并将其替换为'0':

ifelse(is.na(vx), 0, vx)
Run Code Online (Sandbox Code Playgroud)

从数据框中删除包含"NA"的整个行:

dfx = dfx[complete.cases(dfx),]
Run Code Online (Sandbox Code Playgroud)

所有这些功能都会永久删除 "NA"或其中带有"NA"的行.

有时候这并不是你想要的 - 在工作流程的下一步可能需要为数据帧的"NA"删除副本,但在后续步骤中,你经常需要这些行(例如,计算一个由于先前调用"完整案例"而导致缺少行的列的列式统计信息,但该列中没有"NA"值.

尽可能清楚我正在寻找的东西:python/numpy有一个类,蒙面数组,有一个掩码方法,它允许你在函数调用期间隐藏 -但不删除 - NA.R中是否有类似的功能?

r data-processing missing-data

26
推荐指数
3
解决办法
3万
查看次数

标签 统计

data-processing ×1

missing-data ×1

r ×1