2017-10-05 10 views
0

私がやりたいことはちょっと複雑ですので、できる限り最善の方法で説明しようと思います。パンダを使ったCSVファイルの結合(マージと複製)

私は次の形式で2つのCVファイルを持っている:

CSV1:

 Name  Var2 Var3 
    John  6 7 
    John  7 8 
    Mike  5 6 

CSV2:

Name  Var4 Var5 
    John  8 8 
    John  9 9 
    Mike  1 1 
    Mike  2 2 

私は基本的に何をしたいのかは、ファイルをマージであるが、以下でフォーマット:

Name Var2 Var3 Var4 Var5 
    John  6 7 8 8 
    John  6 7 9 9 
    John  7 8 8 8 
    John  7 8 9 9 
    Mike  5 6 1 1 
    Mike  5 6 2 2 

2番目のcsvに同じ名前のエントリがいくつあるかによって、最初のcsvのすべてのNameエントリが重複して2番目のcsvからそれぞれのカラムが追加されます

csv1の名前がcsv 2しかし、私はそれについてに行く方法がわからないんだけど、そこから上

+1

これは、タスクを使用することができますgenerated/pandas.DataFrame.merge.html – MedAli

答えて

2

あなたはhttps://pandas.pydata.org/pandas-docs/stable/ためpd.merge

In [19]: df1 
Out[19]: 
    Name Var2 Var3 
0 John  6  7 
1 John  7  8 
2 Mike  5  6 

In [20]: df2 
Out[20]: 
    Name Var4 Var5 
0 John  8  8 
1 John  9  9 
2 Mike  1  1 
3 Mike  2  2 

In [21]: df1.merge(df2, how='right', on='Name') 
Out[21]: 
    Name Var2 Var3 Var4 Var5 
0 John  6  7  8  8 
1 John  7  8  8  8 
2 John  6  7  9  9 
3 John  7  8  9  9 
4 Mike  5  6  1  1 
5 Mike  5  6  2  2 
+0

実際にはこれは単純だとは思いません!どうもありがとうございました! – Jethro

+0

@Jethroあなたは大歓迎です:) – MedAli

関連する問題