我們有一個CSV文件的數據框。數據幀DF
有包含觀測值的列和包含已進行測量的日期的列(VaR2
)。如果未記錄日期,則CSV文件包含值爲NA
的缺失數據。在數據框的選定列中包含NA(缺失)值的行的子集
Var1 Var2
10 2010/01/01
20 NA
30 2010/03/01
我們想用所述子集的命令來定義一個新的數據幀new_DF
使得其僅包含具有從塔(VaR2
)的NA'
值的行。在給出的例子中,只有第2行將包含在新的DF
中。
命令
new_DF<-subset(DF,DF$Var2=="NA")
不工作,所得到的數據幀沒有行條目。
如果在原始CSV文件中將值NA
與NULL
進行了交換,則相同的命令會生成所需的結果:new_DF<-subset(DF,DF$Var2=="NULL")
。
如何在原始CSV文件中提供值爲NA
的字符串?
感謝您的快速回答(這很快)!事實上,由於數據的csv傳遞,'NA'是字符值,您的第二個陳述可能非常有用。你能否澄清你的第一個陳述? rowSums()的使用對我來說不是很清楚,因爲我只會檢查一個特定的列(有很多列)。如果那個特定的列(在這個例子中是列Var2)有一個'NA'字符串(我將用你的第二條語句替換它),那麼我想選擇整行作爲新數據幀的一部分。 – John
@John:更新。關鍵是使用is.na,我錯誤地解釋你想檢查所有變量。 –
應該是'new_DF < - DF [is.na(DF $ Var),]'',即似乎有一個額外的'('DF'之後的括號''' – PatrickT