2011-10-15 17 views
25

を持つ2つのデータフレームを追加します私はデータフレームの1つのインデックスをマージする前に変更する必要があることを理解していませんでしたが、私はどのようにするかわかりません。は私がやって行ことにより、2つのデータフレームをマージしようとするパンダ

ありがとうございます。

これらは、二つのデータフレームである。

data1

meta particle ratio area type  
0 2  part10 1.348 0.8365 touching 
1 2  part18 1.558 0.8244 single 
2 2  part2  1.893 0.894 single 
3 2  part37 0.6695 1.005 single 
....clip... 
36 2  part23 1.051 0.8781 single 
37 2  part3  80.54 0.9714 nuclei 
38 2  part34 1.071 0.9337 single 

data2

meta particle ratio area type  
0 3  part10 0.4756 1.025 single 
1 3  part18 0.04387 1.232 dusts 
2 3  part2  1.132 0.8927 single 
...clip... 
46 3  part46 13.71 1.001 nuclei 
47 3  part3  0.7439 0.9038 single 
48 3  part34 0.4349 0.9956 single 

最初の列は、インデックス

+0

(オブジェクトが画面上に列挙されているので、即ち、Pythonインタプリタに 'dataframe'の名前を入力する)あなたは、両方' dataframe'オブジェクトのスナップショットを投稿してくださいでした。また、マージを実行したときに使用したキーワードを投稿してください。 http://pandas.sourceforge.net/dataframe.htmlにあるように、データフレームを結合する方法はいくつかあります。達成しようとしていることに最も合ったものを使用していることを確認してください –

+0

ここに2つのデータフレームのプリントがあります: –

+0

申し訳ありませんが、このウェブページには 'data1'と' data2'の内容が表示されません...元の質問に編集してください –

答えて

40

あるappend機能は、オプションの引数を有しますこのインデックスは、アプリケーションでインデックスが意味をなさないため、レコードを一緒に結合するためにここで使用する必要があります。

+0

ありがとう、私はそれを試してみる –

+0

@ジャン=パット:なぜ答えを受け入れる? –

1

groupbyメソッドを使用して索引複製(値ではない)行を識別し、次に重複索引を持つすべての行に対して合計/平均操作を実行できます。

data1 = data1.groupby(data1.index).sum() 
data2 = data2.groupby(data2.index).sum() 
+0

私はdupesをpanel = panel1.append(panel2)としました。そして、これでそれらは削除されました:panel = panel.groupby(panel.index).sum() (私は、パネル、データフレームではなく、どのように知っているかを教えていると言われています) – gseattle

関連する問題