我有一个包含近9000行和200列的数据集。缺少一些数据点。我如何创建变量的排名(例如在表格中),以便按缺失条目的数量对它们进行排序?
答案 0 :(得分:1)
可能是这样的:
sort( colSums( sapply(datfrm, is.na) ) )
使用像R这样的函数式语言,有时候考虑阅读代码的方法是从“内部”开始,通过应用is.na函数,然后“解决问题”到最终条件(排序)。如果您希望首先删除最少的列,则应设置, decreasing = TRUE
,因为sort的默认值是升序。
如果您希望在数据框内对列进行排序(因此需要使用该结果中的另一个提取函数来对列进行排序),它可能是:
datfrm[ , names( sort( colSums( sapply(datfrm, is.na) ) ) )]