如何从数据帧 1 中检索与数据帧 2 匹配条件的行
how to retrieve rows from dataframe 1 that matches condition with dataframe 2
df1
数据框有 'A'
列。
df2
数据框有 'B'
和 'index'
列。
我想知道如何检索 df2
的 'index'
值
来自匹配 df1
的 'A'
值和 df2
的 'B'
值的行。
我如何使用 pandas 方法来做到这一点?
如果我没理解错的话,你可以使用merge
merge_df = df1.merge(df2, left_on='A', right_on'B')
然后,使用
获取 index
值作为列表
merge_df['index'].tolist()
试试这个:
import pandas as pd
d = {'A': ['toto', 'thomas','marine'], 'ok': [3, 4,5]}
df1 = pd.DataFrame(data=d)
d = {'B': ['toto', 'marine','paul'], 'index': ['oui', 'non',"jsp"]}
df2 = pd.DataFrame(data=d)
df2.loc[df2['B'].isin(df1['A']),'index'].to_list()
df1
数据框有 'A'
列。
df2
数据框有 'B'
和 'index'
列。
我想知道如何检索 df2
的 'index'
值
来自匹配 df1
的 'A'
值和 df2
的 'B'
值的行。
我如何使用 pandas 方法来做到这一点?
如果我没理解错的话,你可以使用merge
merge_df = df1.merge(df2, left_on='A', right_on'B')
然后,使用
获取index
值作为列表
merge_df['index'].tolist()
试试这个:
import pandas as pd
d = {'A': ['toto', 'thomas','marine'], 'ok': [3, 4,5]}
df1 = pd.DataFrame(data=d)
d = {'B': ['toto', 'marine','paul'], 'index': ['oui', 'non',"jsp"]}
df2 = pd.DataFrame(data=d)
df2.loc[df2['B'].isin(df1['A']),'index'].to_list()