別のデータフレームの行からの条件に基づいて、あるデータフレームの行インデックスを検索することをベクトル化する方法

wthrift

同じ列を持つ2つのパンダデータフレームがあります。

df1 = pd.DataFrame({'A':[0,0,1,1], 'B':[0,1,0,1]})
df2 = pd.DataFrame({'A':[0,1], 'B':[1,1]})

そして、値がdf2の行と一致するdf1から行インデックスを返したいと思います。たとえば、[1、3]を生成します。df2をループすることでこれを行うことができますが、実際にはこれは非常に遅いです。パンダでこの操作をベクトル化する正しい方法は何ですか?

ベニー

merge最初に試してください

out = df1.reset_index().merge(df2,how='right')['index']
Out[63]: 
0    1
1    3
Name: index, dtype: int64

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

Related 関連記事

ホットタグ

アーカイブ