Ich habe 2 Datenrahmen wie dieseErstellen Sie eine neue Variable in Datenrahmen mit Zustand über einen anderen Datenrahmen
df1
date item
02/01/2017 A
09/01/2017 B
14/01/2017 C
df2
date1 date2 item prm
01/01/2017 03/01/2017 A YES
08/01/2017 10/01/2017 B YES
15/01/2017 17/01/2017 C YES
Zweck
Die prm
Variable ist eine konstante Variable, sie hat den Wert 1. Ich möchte die Variable prm
in meinem DF1 mit dieser Bedingung
df1$date is between df2$date1 and df2$date2 and df1$item=df2$item
Aber hinzufügen, wenn die Bedingung nicht übereinstimmen, dann brauche ich, dass prm
den Wert „NO“
Dies ist ein einfacher nicht-equi kommen in data.table –
habe ich versucht, mit data.table aber meinem df Pass von 1 800 000 Zeilen zu 800 000 Zeilen weiß nicht, warum denn wenn ich ein einzigartiges mache habe ich noch 1 800 000 Zeilen –
Probiere 'library (data.table); setDT (df1) [setDT (df2), ein =. (Artikel, Datum> = Datum1, Datum <= Datum2), Prm: = i.prm] '(vorausgesetzt, die Datumsformate sind korrekt) –