作者elone (Next Step)
看板R_Language
标题[问题] Filter 的问题
时间Wed Jul 15 15:05:33 2015
不好意思 小弟是一个新入门的菜逼巴 平常只会写 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]] )
}
}
}
但是他都会把不该拿掉的东西拿掉 我好苦恼啊
希望有大大可以来救我
谢谢
--
Elone Huang - I am what i'm
by Allen Iverson
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.116.183.232
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/R_Language/M.1436943936.A.C6F.html
1F:→ andrew43: 我没看懂你的条件(不然的爆简单)。把条件说清楚? 07/15 15:21
2F:→ andrew43: ABC有用吗? 没遇到A(0,1)又如何?说完整。 07/15 15:23
※ 编辑: elone (140.116.183.232), 07/15/2015 15:30:10
3F:→ elone: 大大我改了说明 不知道这样有没有清楚一点 不好意思 07/15 15:30
4F:→ andrew43: 有 ,谢谢。 07/15 15:38
5F:→ celestialgod: 主要错在C1 == C1 & D1 == D1吧,=跟==分不清楚 07/15 17:54
6F:→ celestialgod: 还有不能取代tEyedata 07/15 17:57
7F:→ celestialgod: 要另设变数储存结果 例如用空的list 07/15 17:57
8F:→ celestialgod: 一取代之後,後面就不会有符合条件的结果 07/15 17:57
9F:→ celestialgod: 当然最後的结果就是无东西 07/15 17:58