我正在嘗試比較兩個數(shù)據(jù)幀并從第一個數(shù)據(jù)幀中刪除不在第二個數(shù)據(jù)幀中的日期之間的行(或...選擇那些在第二個數(shù)據(jù)幀中的日期之間的行)。選擇應(yīng)該包括在內(nèi)。這可能真的很簡單,但它現(xiàn)在不適合我點擊。示例數(shù)據(jù)如下。對于數(shù)據(jù)框 1,可以使用從 2018 年 7 月 1 日開始到 2018 年 11 月 30 日結(jié)束的每日數(shù)據(jù)生成,并在“數(shù)字”列中使用隨機數(shù)。將...在數(shù)據(jù)幀1是指用來顯示跳過數(shù)據(jù),但該數(shù)據(jù)是在有真正的數(shù)據(jù)幀。數(shù)據(jù)框 1: NumberDate2018-07-01 15.22018-07-02 17.32018-07-03 19.52018-07-04 13.72018-07-05 19.1...2018-09-15 30.42018-09-16 25.72018-09-17 21.22018-09-18 19.72018-09-19 23.4...2018-11-01 30.82018-11-02 47.22018-11-03 25.32018-11-04 39.72018-11-05 43.8數(shù)據(jù)框 2: ChangeDate2018-07-02 Start2018-07-04 End2018-09-16 Start2018-09-18 End2018-11-02 Start2018-11-04 End對于上面的例子,輸出應(yīng)該是: NumberDate2018-07-02 17.32018-07-03 19.52018-07-04 13.72018-09-16 25.72018-09-17 21.22018-09-18 19.72018-11-02 47.22018-11-03 25.32018-11-04 39.7
2 回答

躍然一笑
TA貢獻1826條經(jīng)驗 獲得超6個贊
你可以試試這個,我希望開始和結(jié)束一個接一個地出現(xiàn)并排序。
df3 = pd.concat([df[i:j] for i,j in zip(df2.loc[df2['Change']=='Start'].index, df2.loc[df2['Change']=='End'].index)]))
Number
Date
2018-07-02 17.3
2018-07-03 19.5
2018-07-04 13.7
2018-09-16 25.7
2018-09-17 21.2
2018-09-18 19.7
2018-11-02 47.2
2018-11-03 25.3
2018-11-04 39.7
添加回答
舉報
0/150
提交
取消