选择在表中的三列中具有匹配值的行

2024-10-03 11:24:40 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图提取有三个匹配列的行:employee、new date和original date。我需要查看员工是否在同一日期进行了多次更改(行)

输入:

^{tb1}$

期望输出:

^{tb2}$

我尝试了下面的代码,但没有成功

df = df.groupby(['NewDate', 'OriginalDate']).reset_index()

谢谢大家!


Tags: 代码dfnewdateindex员工employeereset
2条回答

您可能需要查看“pandasql”库。它允许您使用SQL代码来操作数据。这里,pandas数据框将是表

import pandasql as psql

result = psql.sqldf('''
SELECT *
FROM df''')

试试这个:

df = df[~df.duplicated(subset=['EmployeeName','NewDate','OriginalDate'], keep='first')]

有关详细信息,请参阅此链接https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.duplicated.html

相关问题 更多 >