ノック49:通った人を可視化しよう
通った人のカウントを行います。
実行結果
receive_time_sec in1 out1
0 2021-01-20 00:00:40 12109.0 11302.0
1 2021-01-20 00:00:41 12109.0 11302.0
2 2021-01-20 00:00:42 12109.0 11302.0
3 2021-01-20 00:00:43 12109.0 11302.0
4 2021-01-20 00:00:44 12109.0 11302.0
次に1秒前のデータを作成します。shiftを使用することで1つずれたデータが作成されます。
実行結果
receive_time_sec in1 out1
0 NaT NaN NaN
1 2021-01-20 00:00:40 12109.0 11302.0
2 2021-01-20 00:00:41 12109.0 11302.0
3 2021-01-20 00:00:42 12109.0 11302.0
4 2021-01-20 00:00:43 12109.0 11302.0
データがindexの1から始まっています。
作成したdata_analyticsとdeata_before_1secをconcatで結合します。
結合した部分にはカラム名がないので、receive_time_b1sc、in1_b1sec、out1_b1secを追加します。
実行結果
receive_time_sec in1 out1 receive_time_sec_b1sec in1_b1sec out1_b1sec
0 2021-01-20 00:00:40 12109.0 11302.0 NaT NaN NaN
1 2021-01-20 00:00:41 12109.0 11302.0 2021-01-20 00:00:40 12109.0 11302.0
2 2021-01-20 00:00:42 12109.0 11302.0 2021-01-20 00:00:41 12109.0 11302.0
3 2021-01-20 00:00:43 12109.0 11302.0 2021-01-20 00:00:42 12109.0 11302.0
4 2021-01-20 00:00:44 12109.0 11302.0 2021-01-20 00:00:43 12109.0 11302.0
何人入ってきて、何人出ていったのかを計測します。
実行結果
receive_time_sec in1 out1 receive_time_sec_b1sec in1_b1sec out1_b1sec in1_calc out1_calc
0 2021-01-20 00:00:40 12109.0 11302.0 NaT NaN NaN NaN NaN
1 2021-01-20 00:00:41 12109.0 11302.0 2021-01-20 00:00:40 12109.0 11302.0 0.0 0.0
2 2021-01-20 00:00:42 12109.0 11302.0 2021-01-20 00:00:41 12109.0 11302.0 0.0 0.0
3 2021-01-20 00:00:43 12109.0 11302.0 2021-01-20 00:00:42 12109.0 11302.0 0.0 0.0
4 2021-01-20 00:00:44 12109.0 11302.0 2021-01-20 00:00:43 12109.0 11302.0 0.0 0.0
秒単位だと変化が見られないので、各行を時(hour)単位で表示し、時単位でグラフ化します。
strftimeで文字列の変換しています。
実行結果
receive_time_sec in1 out1 receive_time_sec_b1sec in1_b1sec out1_b1sec in1_calc out1_calc date_hour
0 2021-01-20 00:00:40 12109.0 11302.0 NaT NaN NaN NaN NaN 2021012000
1 2021-01-20 00:00:41 12109.0 11302.0 2021-01-20 00:00:40 12109.0 11302.0 0.0 0.0 2021012000
2 2021-01-20 00:00:42 12109.0 11302.0 2021-01-20 00:00:41 12109.0 11302.0 0.0 0.0 2021012000
3 2021-01-20 00:00:43 12109.0 11302.0 2021-01-20 00:00:42 12109.0 11302.0 0.0 0.0 2021012000
4 2021-01-20 00:00:44 12109.0 11302.0 2021-01-20 00:00:43 12109.0 11302.0 0.0 0.0 2021012000
折れ線グラフを作成します。
実行結果