2016-05-17 4 views
-1

パンダで参照列に応じて2つの.csvファイルを結合:は(CUSTOMER_IDが両方のファイルに同じ順序ではありません)私はサイズの異なる2つのファイルを持っている

enter image description here

data = pd.read_csv('data.csv') 

id name country town  customer_id 
xxxx Anna  UK  London sahdghkl 
yyyy Maria USA  Huston avrnnfgs 
cccc Peter FR  Paris eesfawsd 

data2 = pd.read_csv('data2.csv') 

customer_id card_id bank date 
sahdghkl  5975845 aaaaa 20000101 
avrnnfgs  1122255 bbbbb 20010101 
eesfawsd  3366552 ccccc 20020101 

は私が取得したいです出力:

result 
id name country town  customer_id card_id bank date 
xxxx Anna  UK  London sahdghkl  5975845 aaaaa 20000101 
yyyy Maria USA  Huston avrnnfgs  1122255 bbbbb 20010101 
cccc Peter FR  Paris eesfawsd  3366552 ccccc 20020101 
+0

これらのデータセットに「1対1」の関係がありますか? – knagaev

+1

'data1.mergeを試してください(data2、on = 'customer_id')' – EdChum

答えて

0

pandas.merge

を使用してみてくださいは、データフレームを作成します。

temp = u"""id name country town  customer_id 
xxxx Anna  UK  London sahdghkl 
yyyy Maria USA  Huston avrnnfgs 
cccc Peter FR  Paris eesfawsd""" 
data = pd.read_csv(io.StringIO(temp), header=0,delim_whitespace = 1) 

temp = u"""customer_id card_id bank date 
sahdghkl  5975845 aaaaa 20000101 
avrnnfgs  1122255 bbbbb 20010101 
eesfawsd  3366552 ccccc 20020101""" 
data2 = pd.read_csv(io.StringIO(temp), header=0,delim_whitespace = 1) 

df = pd.merge(data,data2,on = 'customer_id') 
print df 

    id name country town customer_id card_id bank  date 
0 xxxx Anna  UK London sahdghkl 5975845 aaaaa 20000101 
1 yyyy Maria  USA Huston avrnnfgs 1122255 bbbbb 20010101 
2 cccc Peter  FR Paris eesfawsd 3366552 ccccc 20020101 

あなたの2つのデータフレームの一方が他方よりも多くのラインを持っている、とあなたは、すべての行を保つあなたは両方のあなたのデータフレームに表示される行だけを残しておきたい場合は、how = 'outer'を追加し、追加したい場合は、次のhow = 'inner'

関連する問題