Vorrei unirmi a due data.table
s utilizzando la data come join.Unire data.table alla data esatta o, in caso contrario, al meno recente della data
Beh, a volte non ho avuto una corrispondenza esatta e in questo caso mi piacerebbe trovare la data meno vicina. Il mio probleme è molto simile a questo post su SQL: SQL Join on Nearest less than date
so data.table
sintassi è analoga a SQL ma non posso codificare questo. Qual è la sintassi corretta?
Un esempio semplificato:
Dt1
date x
1/26/2010 - 10
1/25/2010 - 9
1/24/2010 - 9
1/22/2010 - 7
1/19/2010 - 11
Dt2
date
1/26/2010
1/23/2010
1/20/2010
uscita
date x
1/26/2010 - 10
1/23/2010 - 7
1/20/2010 - 11
Grazie in anticipo.
@mat Sono contento che questa risposta ti abbia aiutato. Per riferimento futuro: aiuta molto se fornisci un codice riproducibile nella tua domanda - questo incoraggia le persone a rispondere, poiché significa che non dobbiamo ricreare il tuo problema da zero, come ho fatto qui. Inoltre, se hai pubblicato il tuo codice con un messaggio di errore, avremmo potuto spiegare perché si verifica questo messaggio di errore e come procedere per risolverlo. – Andrie
Grazie Andrie e Matteo per le tue risposte! Avevo visto questo parametro "rollare" quando ho letto la documentazione. L'ho provato prima ma non funziona, ho avuto questo output Erreur dans '[.data.table' (pixel, Trep, roll = T): Tentativo di roll join sulla colonna dei fattori i.date. Solo le colonne numero intero, doppio o carattere possono essere unite. Ho avuto un problema di formato data. Ora capisco il mio problema con il formato data. grazie mille per più tempo – mat
Ho notato che per futur. Grazie – mat