質問
ある事象が発現した時間にデータが書き込まれて作成されるcsvがあり、同じ日に2種類作成されます。
しかしそれぞれ別のシステムで書き出されるcsvであるため、「Time」データに数秒の違いが生じています(5秒以内の誤差ですが)。
この2つのcsvをタイムスタンプをキーに横方向に結合したいのですが、例えばですが
・5秒以内のデータであれば、同じデータとして認識させ結合する
といったことは出来るでしょうか?
※都合上csv_1の方が若干数ランダムに不要データを含むためデータ数に違いがあります。
非常に説明下手かもしれませんが、有識者の方どうぞご教授の程よろしくお願いいたします。
csv_1.csv
"Name"列が空のcsvです。
こちら余計なデータが含まれています(これでいうと1~3行目がcsv_2にはない余計なデータになります)。
No,Date,Time,Name,data 1,2022-09-28,17:59:15.20,,1.590217 2,2022-09-28,17:59:56.89,,1.513041 3,2022-09-28,18:00:09.43,,1.522097 4,2022-09-28,18:00:41.43,,1.465 5,2022-09-28,18:00:52.59,,1.431577 6,2022-09-28,18:01:03.95,,1.488284 7,2022-09-28,18:01:17.55,,1.461734 8,2022-09-28,18:02:05.25,,1.425147 9,2022-09-28,18:02:17.84,,1.408876 10,2022-09-28,18:02:30.61,,1.396747 11,2022-09-28,18:02:47.93,,1.459247 12,2022-09-28,18:03:32.05,,1.498348 13,2022-09-28,18:03:44.08,,1.42223 ・ ・ ・
csv_2.csv
こちら余計なデータを含まないcsvです。
"Name"に値が入っており、このデータをcsv_1のデータと紐づけたいと考えています。
No,Time,Name 1,18:00:45,Sample 2,18:00:56,Sample 3,18:01:07,Sample 4,18:01:21,Sample 5,18:02:09,Sample 6,18:02:21,Sample 7,18:02:34,Sample 8,18:02:51,Sample 9,18:03:36,Sample 10,18:03:48,Sample ・ ・ ・
該当のソースコード
Python
1import pandas as pd 2df_1 = pd.read_csv("csv_1.csv")3df_2 = pd.read_csv("csv_2.csv")4df = pd.merge(df_1, df_2, on="Time")5print(df)
発生している問題・エラーメッセージ
これだともちろん空のデータフレームが出来上がってしまいますね…。
Empty DataFrame Columns: [No_x, Date, Time, Name_x, data, No_y, Name_y] Index: []
補足情報(FW/ツールのバージョンなど)
python3.9、VSCode

0 コメント