の文字列タイムスタンプでデータフレームをマージする方法を私はマージしたいさまざまなソースからの2つのCSVデータファイルを持っています。両方のファイルには、各行の文字列タイムスタンプがありますが、非常に異なる期間があります.1つは2秒ごと、もう1つは毎時間です。私はそれらをPandasにインポートし、それらをマージしようとしましたが、2つの問題があります。異なる周波数
1)私はpd.to_datetimeを使用してオブジェクトdatetime64パンダにタイムスタンプを変換することができますが、これはデータ列を失って、新しいシリーズを作成します。変換は「インプレース」で行うことができますか? は私の試みがある: newdf = pd.to_datetime(calc_insol.ilocの[:0])#1 calc_insolがDF
2)私が正しい日時形式に両方のDFを得ることができると仮定すると、それらが所定のマージすることができますタイムスタンプ期間の非常に大きな違い。
各DFの抽出物は、以下に示されています。
0 2017-May-19 2:00:00 0
1 2017-May-19 3:00:00 0
2 2017-May-19 4:00:00 0
3 2017-May-19 5:00:00 0
4 2017-May-19 6:00:00 0
5 2017-May-19 7:00:00 0
6 2017-May-19 8:00:00 497.5
7 2017-May-19 9:00:00 685.2
8 2017-May-19 10:00:00 768.4
9 2017-May-19 11:00:00 806.3
10 2017-May-19 12:00:00 816.6
11 2017-May-19 13:00:00 803.1
12 2017-May-19 14:00:00 760.6
13 2017-May-19 15:00:00 668.7
14 2017-May-19 16:00:00 456.8
15 2017-May-19 17:00:00 0
16 2017-May-19 18:00:00 0
17 2017-May-19 19:00:00 0
18 2017-May-19 20:00:00 0
19 2017-May-19 21:00:00 0
20 2017-May-19 22:00:00 0
21 2017-May-19 23:00:00 0
22 2017-May-20 0
meas_insol:
2017-May-19 11:59:57 89.8
2017-May-19 11:59:59 80.57
2017-May-19 12:00:01 90.64
2017-May-19 12:00:03 93.15001
2017-May-19 12:00:05 85.6
2017-May-19 12:00:07 78.89
2017-May-19 12:00:09 85.6
2017-May-19 12:00:11 75.53
2017-May-19 12:00:13 93.99
2017-May-19 12:00:15 93.15001
2017-May-19 12:00:17 92.32
2017-May-19 12:00:19 87.28
2017-May-19 12:00:21 77.21
2017-May-19 12:00:23 92.32
2017-May-19 12:00:25 79.73001
2017-May-19 12:00:27 76.37001
2017-May-19 12:00:30 74.69
2017-May-19 12:00:32 88.96
2017-May-19 12:00:34 73.85
2017-May-19 12:00:36 78.89
2017-May-19 12:00:38 76.37001
2017-May-19 12:00:40 77.21
2017-May-19 12:00:42 88.12
2017-May-19 12:00:44 87.28
2017-May-19 12:00:46 88.12
2017-May-19 12:00:48 79.73001
2017-May-19 12:00:50 74.69
2017-May-19 12:00:52 77.21
2017-May-19 12:00:54 83.92
2017-May-19 12:00:56 73.85
2017-May-19 12:00:58 83.92
2017-May-19 12:01:00 83.08001
2017-May-19 12:01:02 74.69
2017-May-19 12:01:04 78.89
2017-May-19 12:01:06 73.85
2017-May-19 12:01:08 86.44
2017-May-19 12:01:10 74.69
2017-May-19 12:01:12 73.01
2017-May-19 12:01:14 68.82
2017-May-19 12:01:16 83.92
理想的には、完成DFがdatetimeオブジェクトとCOL 1意志としてCOL 0を持つことになり、文字列のタイムスタンプがCOL 0で、 "データ" COL 1 calc_insolでありますcalc_insolからのデータであり、col 2はmeas_insolからのデータです。 ご協力いただければ幸いです。
を私の答えは何の所望の出力を持っていない場合、あなたはそれを追加することができます質問?また、日付の間に一致がない、あなたはそれを変更できますか? (サンプルで3〜5行はOKです)。ありがとうございました。 – jezrael
ありがとうございます - データ選択が重複するように変更しました。あなたの提案を使用して、各ファイルでタイムスタンプを修正しました。私は今合併を確認することはできませんが、明日はオフィスに戻るときになります。 – icenov
申し訳ありませんが、今私は少し混乱しています - あなたはcalc_insol' 'のようなhours''へ 'meas_insol'アップサンプリングを最初に必要として、マージしていますか? – jezrael