處理時間型資料

給試算表使用者的 pandas 合併實務

John Miller

Principal Data Scientist

使用 .merge_ordered() 連接

時間序列合併無結果

pd.merge_ordered(cleveland, dallas, on='Game_Date', 
                suffixes=['_CLE', '_DAL'])
給試算表使用者的 pandas 合併實務

使用 .merge_ordered() 連接

時間序列合併

pd.merge_ordered(cleveland, dallas, on='Game_Date', 
                suffixes=['_CLE', '_DAL'])
給試算表使用者的 pandas 合併實務

資料插補

合併時插補

pd.merge_ordered(tc2, td2, on='Game_Date', 
                suffixes=['_CLE', '_DAL'], fill_method='ffill')
給試算表使用者的 pandas 合併實務

資料插補

fgf

pd.merge_ordered(tc2, td2, on='Game_Date', 
                suffixes=['_CLE', '_DAL'], fill_method='ffill')
給試算表使用者的 pandas 合併實務

合併到最近日期時間

  • pandas.merge_asof()
  • 以最近日期比對
  • 類似 VLOOKUP(range_lookup=TRUE)
pd.merge_asof(left_df, right_df,
              direction='backward')

方向

  • 「backward」:找最近且較早的日期

  • 「forward」:找最近且相同或更晚的日期

  • 「nearest」:不分早晚的最近日期

給試算表使用者的 pandas 合併實務

merge_asof 範例

merge_asof 範例

pd.merge_asof(temps, impacts,
              left_on='Game_Date', right_index=True, direction='backward')
給試算表使用者的 pandas 合併實務

一起來練習吧!

給試算表使用者的 pandas 合併實務

Preparing Video For Download...