[問題] Filter 的問題

作者: elone (阿萬師)   2015-07-15 15:05:33
不好意思 小弟是一個新入門的菜逼巴 平常只會寫 C
小弟有一個要做多重 filter 的問題...
前言
事情是這樣的 我們想針對不同的使用者與其不同的判斷條件去刪資料
ex
source file (因為變數很長所以用ABC 來代替)
tEyedata
C1 C2 C3
A 0 1 5
A 0 1 7
A 0 2 6
A 0 2 8
B 0 1 7
B 0 2 8
C 0 1 9
C 0 2 10
Filter file
pN
C1 C2 C3
A 0 1 6
A 0 2 7
B ...
C ..
...
我們要逐一比對 tEyedata C1 C2 和 pN C1 C2 是否有一樣
  如果一樣的話 再去看 tEyedata$C3 是否有 >= pN$C3
如果有的話 就會把這筆record 拿掉
如果沒有的話 就會留下這筆 record
就結果來說應該 tEyedata 會變成
C1 C2 C3
A 0 1 5
A 0 2 6
B ..
但是我們的code 都會拿光光 QAQ ... 卡了2天了啊啊啊
#read prune file
tEyedata <- read.table("Eye.txt",header=T)
pN <- read.table("Eye/Eye_Prune.txt",header=T)
for(i in 1:nrows(tEyedata))
{
for(j in 1:nrows(pN))
{
if(tEyedata$subject[[i]] == pN$subejct[[j]] & C1 = C1 & D1 = D1 )
{
tEyedata <- subset(tEyedata, tEyedata$C3 <= pN$C3[[j]] )
}
}
}
但是他都會把不該拿掉的東西拿掉 我好苦惱啊
  希望有大大可以來救我
  謝謝
作者: andrew43 (討厭有好心推文後刪文者)   2015-07-15 15:21:00
我沒看懂你的條件(不然的爆簡單)。把條件說清楚?ABC有用嗎? 沒遇到A(0,1)又如何?說完整。
作者: elone (阿萬師)   2015-07-15 15:30:00
大大我改了說明 不知道這樣有沒有清楚一點 不好意思
作者: andrew43 (討厭有好心推文後刪文者)   2015-07-15 15:38:00
有 ,謝謝。
作者: celestialgod (天)   2015-07-15 17:54:00
主要錯在C1 == C1 & D1 == D1吧,=跟==分不清楚還有不能取代tEyedata要另設變數儲存結果 例如用空的list一取代之後,後面就不會有符合條件的結果當然最後的結果就是無東西

Links booklink

Contact Us: admin [ a t ] ucptt.com