2013-07-03 1 views
1

У меня есть список data.frames, и некоторые из них заполнены NA, я хотел бы удалить эти data.frames с только NA в моем списке.удалить data.frames в списке заполняется только значениями NA

Я использую эти две команды:

list.df <- lapply(list.df, na.omit) 
list.df <- list.df[sapply(list.df, function(x) dim(x)[1] >0)] 

Есть ли способ сделать то же самое, но в одной строке?

Благодаря

+0

Можете ли вы предоставить некоторые выборочные данные, чтобы мы могли видеть, как эти команды должны работать? – A5C1D2H2I1M1N2O1R2T1

ответ

2

Это сохраняет все data.frame S, которые имеют по крайней мере один NA -бесплатно ряд:

df.list[ sapply(df.list, function(x){ any(rowSums(is.na(x)) == 0) }) ] 
+0

+1 вам может понравиться '? Complete.cases' –

Смежные вопросы