Я пытаюсь добавить все значения из панд DataFrames df1.Number
в df2.Number
, где совпадают диапазоны дат.У меня есть созданный df1
, который выглядит так:
Start End Number
0 2000-01-01 2000-01-08 1
1 2000-01-02 2000-01-09 2
2 2000-01-03 2000-01-10 3
3 2000-01-04 2000-01-11 4
4 2000-01-05 2000-01-12 5
5 2000-01-06 2000-01-13 6
6 2000-01-07 2000-01-14 7
и df2, который выглядит так:
Dates Number
0 2000-01-01
1 2000-01-02
2 2000-01-03
3 2000-01-04
4 2000-01-05
5 2000-01-06
6 2000-01-07
7 2000-01-08
8 2000-01-09
9 2000-01-10
10 2000-01-11
11 2000-01-12
12 2000-01-13
13 2000-01-14
, и я пытаюсь назначить Number
из df1
до Number
в df2
, если диапазон дат в строках соответствует
Код, который я использовал для первой строки:
i = pd.date_range(df1.Start[0], df1.End[0])
if df2.Dates in i:
df2.Number.assign(df1.Number)
, который не выдает ошибку, нотакже ничего не присваивает Number
.Ожидаемый результат должен быть следующим:
Dates Number
0 2000-01-01 1
1 2000-01-02 1,2
2 2000-01-03 1,2,3
3 2000-01-04 1,2,3,4
4 2000-01-05 1,2,3,4,5
5 2000-01-06 1,2,3,4,5,6
6 2000-01-07 1,2,3,4,5,6,7
7 2000-01-08 1,2,3,4,5,6,7
8 2000-01-09 2,3,4,5,6,7
9 2000-01-10 3,4,5,6,7
10 2000-01-11 4,5,6,7
11 2000-01-12 5,6,7
12 2000-01-13 6,7
13 2000-01-14 7
Кто-нибудь может подсказать, почему ничего не присваивается или код, который будет делать это для всех строк?Спасибо.