私はd1とd2を持っていて、2つをID列でマージしたいとします。 ただし、IDとID2は完全に一致しません。代わりに、IDはID2の最初の8桁です(場合によっては最初の6桁になることもあれば、1桁または2桁異なることもあります)。データ・フレームを正規表現またはファジー・マッチでマージする
ID2を前処理して最初の8桁のみを保持できることを理解します。しかし、私はすべての状況を処理することはできません。
ファジィマッチの正規表現をマージする高度な方法はありますか?たとえば、最初の6桁が一致すれば、マージしますか?
d1=pd.DataFrame({'ID':['00846U10','01381710'],
'count':[100,200]})
d2=pd.DataFrame({'ID2':['00846U101','013817101','02376R102'],
'value':[1,5,6]})
前処理IDとID2は6文字しか保持できません。 –
@GauravDhamaそれは私の状況のすべてを処理しません。質問を更新しました – Lisa
したがって、IDとID2の両方をスライスして6桁の数字を含むようにしたい場合、一致するものがあれば、2つのデータフレームをマージしますか? –