作者aee36900 (持久战!!)
看板R_Language
标题[问题] data frame捞取资料-复杂条件
时间Wed Apr 6 22:16:31 2016
- 问题: 当你想要问问题时,请使用这个类别
[问题类型]:
程式谘询(我想用R 做某件事情,但是我不知道要怎麽用R 写出来)
[软体熟悉度]:
请把以下不需要的部份删除
新手(没写过程式,R 是我的第一次)
[问题叙述]:
延续上个data frame 捞取特定资料问题,但是条件比较复杂
我需要c1 c2条件下的c3作为筛选条件
程式我尝试用下面的方式叙述
但是没有效果@@
想请问哪边需要修改
[程式范例]:
df <- df[df$c3 %in% df[df$c1 >= '0.xxx' & df$c2 == 1,c3],]
[关键字]:
data frame select condition row column
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 220.132.153.20
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/R_Language/M.1459952193.A.A46.html
1F:→ celestialgod: 这样c3会undefine吧 而且'0.xxx'是字串耶 04/06 22:47
2F:→ celestialgod: '0.xxx'改成数字,c3改成 'c3' 04/06 22:48
3F:→ celestialgod: 原PO要不要学一下怎麽用dplyr? 04/06 22:49
4F:→ celestialgod: df = df %>% filter(c3 %in% (df %>% filter(c1 >= 04/06 22:50
5F:→ celestialgod: 0.xxx , c2 == 1) %>% .$c3)) 04/06 22:50
感谢C大,不过刚刚尝试, R回应说
Error: could not find function "%>%"
PS.抱歉 是自己环境没安装 dplyr
我再试试看
6F:→ celestialgod: 板上搜寻dplyr可以找到相关教学文 04/06 22:51
ok~感谢提示,等等来研究一下dplyr的用法
7F:→ joejoe14758: df <- df[ df[c1>=0.xxx] %in% df[c2==1] ] 04/06 23:52
感谢分享,不过R说error
※ 编辑: aee36900 (220.132.153.20), 04/07/2016 00:06:12
※ 编辑: aee36900 (220.132.153.20), 04/07/2016 00:10:42
8F:→ joejoe14758: 痾 那是用你上面的条件来作的... 04/07 01:00
9F:→ joejoe14758: df [ df[df$c2==56]%in%df[df$c1>5000] ] 04/07 01:01