Python 迭代具有相同长度的两个数据帧

Python 迭代具有相同长度的两个数据帧,python,pandas,Python,Pandas,我想迭代两个大小不相同的数据帧,以便输出用户列表及其信息,这些用户将离开公司,并且仍然活跃 df1=pd.DataFrame({'Name':['PAUL','LAURE','DAVID','MAT'], ‘矩阵’:[‘AP’、‘MP’、‘ND’、‘AD’], ‘ACTIF’:[‘是’、‘是’、‘是’、‘否’]} df2=pd.DataFrame({'Name':['MIKE','DAVID','MAT']} 当我在df2.index中时: 对于df1.index中的j: 用户离开=[] 如

我想迭代两个大小不相同的数据帧,以便输出用户列表及其信息,这些用户将离开公司,并且仍然活跃

df1=pd.DataFrame({'Name':['PAUL','LAURE','DAVID','MAT'],
‘矩阵’:[‘AP’、‘MP’、‘ND’、‘AD’],
‘ACTIF’:[‘是’、‘是’、‘是’、‘否’]}
df2=pd.DataFrame({'Name':['MIKE','DAVID','MAT']}
当我在df2.index中时:
对于df1.index中的j:
用户离开=[]
如果df2['Name'][i]==df1['Name'][j]和df1.ACTIF[j]==Yes':
用户离开=df1.iloc[i]
其他:
j=j+1
i=i+1
打印(用户离开)
结果应该是这样的:

Name     Matricule
David    ND

有一个比在DataFrame上迭代更好的选项,您可以根据第二个DataFrame值过滤第一个DataFrame并选择所需的列

请参阅以下代码:

df1[(df1.Name.isin(df2.Name)) & (df1.ACTIF=='YES')][['Name', 'MATRICULE']]

有一个比在DataFrame上迭代更好的选项,您可以根据第二个DataFrame值过滤第一个DataFrame并选择所需的列

请参阅以下代码:

df1[(df1.Name.isin(df2.Name)) & (df1.ACTIF=='YES')][['Name', 'MATRICULE']]