2つのデータフレームがあります。
データフレーム1:
ID MONTH
1 2010-01
1 2010-03
1 2010-04
2 2010-01
3 2010-01
3 2010-02
データフレーム2:
ID MONTH
1 2010-01
3 2010-02
データフレーム2のID列と月列の両方の行の一致に基づいてデータフレーム1に新しい列を作成する方法はありますか?
最終結果は次のようになります。
ID MONTH Match
0 1 2010-01 Y
1 1 2010-03 N
2 1 2010-04 N
3 2 2010-01 N
4 3 2010-01 N
5 3 2010-02 Y
merge
+indicator
で確認すると、戻り値both
はYes
、にleft_only
なりますNo
s=df1.merge(df2,indicator=True,how='left')
s['Match']=s.pop('_merge').map({'both':'Y','left_only':'N'})
s
Out[18]:
ID MONTH Match
0 1 2010-01 Y
1 1 2010-03 N
2 1 2010-04 N
3 2 2010-01 N
4 3 2010-01 N
5 3 2010-02 Y
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加