2016-11-10 112 views
-1

對不起,要求提供應該是一件容易工作的東西,我是一名地質學生,渴望在學校中使用R來工作。R刪除行,在兩列中沒有相同的值

我想刪除我的數據庫中的行,其中兩個特定列的值不匹配。

例如:

e F 14 14 
t D 14 12 
j A 11 11 
a R 14 13 

所以第二行應該被刪除和第四也是如此。帶有這些字母的列不應該相關,只有兩個帶有數字。

+3

像'DF [DF $ COL3 == DF $ COL4,]' – HubertL

回答

0

假設你的數據在DF商店,要做到以下幾點:

df <- data.frame(col1= c('e','t','j','a'), 
       col2 =c('F','D','A','R'), 
       col3=c(14,14,11,14), 
       col4=c(14,12,11,13)) 
df <- df[df$col3==df$col4,] 
-1

所以假設你要刪除的行是2,3

的核心思想是你形成一套的要刪除的行,並保留該集的補充。

在R中,集合的補碼由' - '運算符給出。

因此,假設data.frame被稱爲myData的:

myData <- myData[-c(2, 3), ] 
0

簡單subset操作:

new_df <- subset(df, columnX == columnY) 
相關問題