Datenrahmen-Suchwert im Bereich und Rückgabe einer anderen Spalte

Ich habe zwei Datenrahmen und möchte den Wert in einem verwenden DF1$pos) zum Durchsuchen von zwei Spalten in DF2 (DF2start, DF2end) und wenn es in diese Zahlen fällt, geben Sie @ zurüDF2$name

DF1

ID   pos  name
chr   12
chr  542
chr  674

DF2

ID   start   end   annot
chr      1   200      a1
chr    201   432      a2
chr    540  1002      a3
chr   2000  2004      a4

so in diesem Beispiel möchte ich DF1 @ werd

ID   pos  name
chr   12    a1
chr  542    a3
chr  674    a3

Ich habe versucht, Merge und Intersect zu verwenden, weiß aber nicht, wie man ein @ verwendeif -Anweisung mit einem logischen Ausdruck.

Die Datenrahmen sollten wie folgt codiert werden:

DF1  <- data.frame(ID=c("chr","chr","chr"),
               pos=c(12,542,672),
               name=c(NA,NA,NA))

DF2  <- data.frame(ID=c("chr","chr","chr","chr"),
               start=c(1,201,540,200),
               end=c(200,432,1002,2004),
               annot=c("a1","a2","a3","a4"))

Antworten auf die Frage(4)

Ihre Antwort auf die Frage