<मजबूत>विचार इस के समान है
. आप pmin
. का उपयोग करके दो अतिरिक्त कॉलम बना सकते हैं एक pmax
इस प्रकार समूह के लिए:
एक data.table
समाधान। लेकिन अगर आप data.table नहीं चाहते हैं, तब भी आप इस विचार का उपयोग कर सकते हैं। हालांकि, यह बहुत ही असंभव है कि आप केवल R कोड के साथ data.table समाधान की तुलना में तेज़ी से प्राप्त करें।
# assuming your data.frame is DF
require(data.table)
DT <- data.table(DF)
# get min of V1,V2 on one column and max on other (for grouping)
DT[, `:=`(id1=pmin(V1, V2), id2=pmax(V1, V2))]
# get max of V3
DT.OUT <- DT[, .SD[which.max(V3), ], by=list(id1, id2)]
# remove the id1 and id2 columns
DT.OUT[, c("id1", "id2") := NULL]
# V1 V2 V3
# 1: 2 1 666
# 2: 100 102 23131
# 3: 10 19 124444
# 4: 10 15 1244
# 5: 100 110 23