У меня есть два фрейма данных различной длины (n = 3012 и 3008), которые мне нужно объединить по дате. Я попытался использовать функции слияния и rbindfill, но не имел успеха. Общий поток между двумя файлами данных - дата_time, однако оба df2 не имеют одинаковых значений, таких как df1.Слияние данных с разной длиной по датам сопоставления
df1
ID date_time Q_cfs Data_Code
68 2016-11-01 00:00:00 353 P
69 2016-11-01 00:15:00 356 P
70 2016-11-01 00:30:00 357 P
71 2016-11-01 00:45:00 356 P
72 2016-11-01 01:00:00 358 P
73 2016-11-01 01:15:00 355 P
df2
ID stage date_time
1 4.82 2016-11-01 00:00:00
2 4.83 2016-11-01 00:15:00
3 4.84 2016-11-01 00:30:00
4 4.85 2016-11-01 00:45:00
5 4.86 2016-11-01 01:00:00
6 4.87 2016-11-01 01:15:00
Я попытался с помощью слияния (ниже), но он не работает, поскольку длины столбцов различны.
DF_New<- merge(df1,df2, by.x = df1$date_time, by.y = df2$date_time)
Я также попытался использовать rbind.fill (ниже), но заменил все значения df2 на.
DF_New <- rbind.fill(df1,df2)
Любые предложения?
Ваши предположения о причине отказа неверны. Слияния с картами данных неравного номера строки являются типичными. Если вам нужно принудительно использовать Date-class, используйте 'as.Date'. –