2017-06-14 11 views
1

天気情報付き、時間帯別、バス到着データ付きの2つのパンダデータフレームがあります。時間帯でのパンダデータフレームへの結合

バスデータがその時間の天気に関連付けられるようにデータフレームに参加したいとします。 2012年1月6日の午後1時から2時の間のバスデータは、対応する気象データに関連付けられます。

例えばバスデータ

DateTime    LineID Longitude Latitude 
2013-01-01 00:00:27  4.0  -6.279000 53.416683 
2013-01-01 00:01:33  4.0  -6.279321 53.416697 
2013-01-01 00:02:44  4.0  -6.279435 53.416492 
2013-01-01 00:03:28  4.0  -6.279553 53.416596 
2013-01-01 00:04:31  4.0  -6.279868 53.416530 

例えば気象データ

DateTime    Temperature Rainfall 
2013-01-01 00:00:00  10    0  
2013-01-01 01:00:00  10    0  
2013-01-01 02:00:00  11    0 
2013-01-01 03:00:00  11    0.1 
2013-01-01 04:00:00  11    0.2 

はこれを行う方法はありますか?どんな助けでも大歓迎です。

+0

あなたは結果を期待されていますか?あなたのサンプルデータにPM時間も1-6-2012データもありませんか?明確にすることはできますか? –

答えて

3

IIUC、私はあなたがpd.merge_asofが必要だと思う:

pd.merge_asof(bus_df,weather_df, on='DateTime') 

出力:

   DateTime LineID Longitude Latitude Temperature Rainfall 
0 2013-01-01 00:00:27  4.0 -6.279000 53.416683   10  0.0 
1 2013-01-01 00:01:33  4.0 -6.279321 53.416697   10  0.0 
2 2013-01-01 00:02:44  4.0 -6.279435 53.416492   10  0.0 
3 2013-01-01 00:03:28  4.0 -6.279553 53.416596   10  0.0 
4 2013-01-01 00:04:31  4.0 -6.279868 53.416530   10  0.0 
+0

これはまさに私が必要とするように聞こえる。 "AttributeError:module 'pandas'には 'merge_asof'属性がありませんが、実行しようとするとエラーが表示されます。 – Reggie

+0

あなたはどんなパンダのバージョンですか? –

+0

['pd.merge_asof'](http://pandas.pydata.org/pandas-docs/version/0.19.0/generated/pandas.merge_asof.html#pandas-merge-asof)バージョン0.19.0の新機能 –

関連する問題