【发布时间】:2018-07-24 06:35:08
【问题描述】:
我无法根据 if else 条件限制数据集。
这是我的数据框的示例:
mydf<-data.frame(chemical=c("Cd","Cd","Cd","Cd","Pb","Pb"),species=c("a","a","a","a","b","d"),scores=c(0,1,2,3,0,0))
我需要选择:对于每种化学物质和物种,如果scores>0 选择得分最低的行,否则选择带有0 的行
我可以做最小的分数,但我似乎无法成功添加 if else 语句。
ddply(mydf,.(chemical,species),function(x) x[which.min(x$score),])
结束表应该是这样的:
chemical species scores
1 Cd a 1
2 Pb b 0
3 Pb d 0
【问题讨论】:
标签: r if-statement dataframe subset plyr