2017-09-05 2 views
-1

Ich mache eine Suche von einer Tabelle zur anderen mit Agrep, aber die Ergebnisse, die ich zurückgeben möchte, sind nicht die Werte, die übereinstimmen. Sie stammen aus einer anderen Spalte/Variable. Meine aktuelle agrep Syntax:Verwenden Sie agrep, um eine andere Variable zurückzugeben

So jetzt: personalfolders$DOBMatch == c(290, 312) aber was ich will, ist, die Werte von anderen Variablen in dem Datenrahmen zurückkehrt Ich bin auf der Suche nach oben genannt: allees2$PartPathmatch1 für jede dieser zurückgegebenen Zeilen. Ich weiß über den Wert = TRUE Variable für Agrep, aber ich glaube, dass nur den Suchwert selbst zurückgibt.

Gibt es eine Weise, die ich entweder das personalfolders$DOBMatch Feld verwenden können, die jetzt so etwas wie c(290, 312) enthält einen anderen Vektor zu erstellen, dann fügen Sie es mit den Suchergebnissen auf den Rahmen, oder kann ich ein weiteres Argument für die agrep Funktion fügen Sie den allees2$PartpathMatch1 zurückzukehren Matched Werte direkt?

+0

'allees2 $ PartPathmatch1 [c (290.312)]' – Jaap

+0

@Jaap Das würde bedeuten, ich tun würde: 'personalfolders $ DOBMatch1 <- allees2 $ PartPathMatch1 [personalfolders $ DOBMatch]' aber das geht nicht – shmaxnow

Antwort

0

Wie

über
personalfolders$DOBMatch <- lapply(personalfolders$DOB, function(y) allees2$PartPathMatch1[agrep(y, allees2$`Date Of Birth`, max.distance=1)]) 
Verwandte Themen