Djo*_*822 2 select row r which dataframe
所以我有一个文本块,我已经分成了一个向量,从每行向量我进一步将它分成一个数据帧.在一个完美的世界中,DF的每一行都是完全相同的,但它并不存在,并且其中有许多行具有NA值.我需要做的是从数据框中选择具有最少NA值的行.
所以说DF看起来像这样:
姓名年份NA地址NA州
名称年份ID地址城市州名别
年份NA NA城市州名
NA NA NA NA NA
姓名年份NA NA NA NA NA
它们各自属于列.所以我需要一种方法来识别哪个行的NA数最少,然后选择该行的元素.所以最终我希望返回只是读取的单行DF(或优选的矢量)
姓名年份ID地址城市州级
在这种情况下,第2行.
我知道:
max(rowSums(!is.na(x)))
将返回具有最多数量的非na值的行#,但我似乎无法弄清楚如何抓取该行的元素.我在想使用哪个()会起作用,但我似乎无法弄明白.
谢谢你的帮助!
大卫
如果您的数据框是df,那么:
df[which.max(rowSums(!is.na(df))),]
Run Code Online (Sandbox Code Playgroud)
应该返回具有最少NA的单行数据帧.