2016-04-19 6 views
-1

私は以下の2つの単純なデータフレームを持っています。パンダのデータフレーム追加するインデックスが自動的に欠けている列を追加する

DF1:

df1

DF2:

df2

私はのようなものを使って、DF1するDF2を追加したい:

df1["CF 0.3"]=df2 

はしかし、これが唯一の追加しますdf1とdf2のインデックスが 同じ。私は列を追加して失われたインデックスが自動的に追加されるようにしたいと思います。インデックスの値が関連付けられていなければ、NaNで埋められます。このような何か:

enter image description here

私はこれをしなかった方法が DF1 = df1.add(DF2)を書き込むことである

は、これは自動的に不足しているインデックスを追加しますが、すべての値がNaNです。次に、手書きで値を入力しました:

df1["CF 0.1"]=dummyDF1 
df1["CF 0.3"]=dummyDF2 

これは簡単な方法ですか?私は何かが足りないと感じている。

私はあなたが私の質問を理解してほしい:)

+0

ありがとうございました。私が見つけた提案に基づいて、これは私が必要としていたものです。 result = pd.concat([df1、df2]、axis = 1) – bmorvaj

答えて

0

使用concatは、詳細なヘルプのために、このdocumentationを参照してください。

そして、ここでのドキュメントに基づい例です:

import pandas as pd 
df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'], 
        'B': ['B0', 'B1', 'B2', 'B3'], 
        'C': ['C0', 'C1', 'C2', 'C3'], 
        'D': ['D0', 'D1', 'D2', 'D3']}, 
        index=[0, 1, 2, 3]) 


df2 = pd.DataFrame({'X': ['A4', 'A5', 'A6', 'A7'], 
        'XB': ['B4', 'B5', 'B6', 'B7'], 
        'XC': ['C4', 'C5', 'C6', 'C7'], 
        'XD': ['D4', 'D5', 'D6', 'D7']}, 
        index=[4, 5, 6, 7]) 


df3 = pd.DataFrame({'YA': ['A8', 'A9', 'A10', 'A11'], 
        'YB': ['B8', 'B9', 'B10', 'B11'], 
        'YC': ['C8', 'C9', 'C10', 'C11'], 
        'YD': ['D8', 'D9', 'D10', 'D11']}, 
        index=[8, 9, 10, 11]) 

#To get the desired result you are looking for you need to reset the index. 
#With the dataframes you have you may not be able to merge as well 
#Since merge would need a common index or column 
frames = [df1.reset_index(drop=True), df2.reset_index(drop=True), df3.reset_index(drop=True)] 

df4 = pd.concat(frames, axis=1) 

print df4 
0

をマージしたり、参加あなたが探しているものhere

関連する問題