1
我试着按这个数据使得函数依赖于两个变量匹配合适的人选 - R的
girlfriend = c('Sue','Julie','Lora','Lora','Julie')
boyfriend = c('Sam','John','Peter','Chris','Sam')
goodfeeling = c(88, 78, 63, 51, 40)
couple = data.frame(girlfriend,boyfriend,goodfeeling)
通过上面的数据做出couplemaker功能,我想最好的男孩匹配的女孩。
A = 'Julie (Sam|John|Peter)'
是
A
[1] 'Julie (John)'
为了对付这个字符串,下面的代码是如此usful。
gsubfn("\\(([^)]+)", ~paste0("(", paste(couplemaker(unlist(x)), collapse="|")), A)
但是,重要的功能是couplemaker()我应该做的。
couplemaker = function(A){couple$boyfriend[which.max(couple$goodfeeling*(couple$boyfriend %in% A))]}
这段代码选择了一个有着最好的感觉但没有与女朋友对应的男朋友。
为了使我的目的更清晰,这些是我打算制作的理想套件。
Paris = 'Sue (Peter|Sam|Chris)'
US = 'Lora (Peter|Chris|Sam)'
是
Paris
[1] 'Sue (Sam)'
US
[1] 'Lora (Peter)'
那么,我的目标是做的是在一个字符串中删除不太有希望的候选人。 – Rcoding
@编码是的,但这也是其他方式正确吗? Ryt! –
Ryt!辉煌的方式来分组夫妇虽然。 – Rcoding