2016-02-27 70 views
-6

我們有一個來自制表符分隔文件的數據幀。數據幀NCNT具有第2列和第3列,觀察值爲A,G,T,C以及表示爲'。'的缺失數據。而不是NA。包含'。'的行的子集在數據幀的選定列中作爲缺失值而不是NA

我們想使用子集命令來定義一個新的數據框newNCNT,使它只包含具有缺失值''的行。

newNCNT <- NCNT[ NCNT[[2]] == "." & NCNT[[3]] == ".", ] 

爲了使用subset功能一個通常會需要知道那些列名:從2列值和3

+5

歡迎來到Stack Overflow!您的問題不包含[可重現的示例](http://stackoverflow.com/q/5963269/4303162)。因此很難理解你的問題並給你一個合適的答案。請提供您的數據(例如使用'dput()')或使用R中的示例數據集之一。另外,添加將您的問題重現到您的文章所需的最小代碼。 – Stibu

+0

沒有一個可重複的例子,我們所能做的只是猜測 - 例如它可能是'子集(NCNT,rowSums(NCNT [2:3] ==「。」)> 0)' –

+0

非常感謝你使用@docendo discimus。代碼工作。 – Ann

回答

1

這應該使用普通的邏輯索引和邏輯操作符提供所需的子集兩列。如果有人知道的名字是name1name2那麼它可能是:「」

newNCNT <- subset(NCNT, name1 == "." & name2 == ".") 

這將提供行,其中這些列都值。許多人難以正確表達他們想要的邏輯運算,所以如果你想要或者第2列或第3列有一個缺失值,那麼你需要|(OR)運算符。 @docendodiscimus顯然以爲你想要後者。

+0

謝謝@ 42-尋求幫助。 – Ann

相關問題