【发布时间】:2017-02-21 17:59:08
【问题描述】:
对于以下数据框:
DF <- data.frame(Row=c(1,2,3,4,5),`2.04`=c(1,1,0,1,1),`2.05`=c(0,0,0,0,1),
`2.06`=c(1,0,0,0,1),`2.07`=c(1,0,0,0,1),`2.08`=c(1,1,1,0,0), check.names = F)
我想为每一行返回一个新向量,列名同时具有(a)相关行中大于 0 的值; (b) 列名在所有满足条件 a 的列中具有最高值,这样:
DF <- data.frame(Row=c(1,2,3,4,5),'2.04'=c(1,1,0,0,1),'2.05'=c(0,0,0,0,1),
'2.06'=c(1,0,0,0,1),'2.07'=c(1,0,0,1,1),'2.08'=c(1,1,1,0,0),
Results=c(2.08,2.08,2.08,2.04,2.07)
所以对于第 2 行,列 2.04 和 2.08 满足条件 (a),只有 2.08 满足条件 (b),因为 2.08>2.04。
dplyr 或 data.table 将是首选。
【问题讨论】:
标签: r