Python 如何通过匹配内容列表搜索熊猫中的特定单元格

Python 如何通过匹配内容列表搜索熊猫中的特定单元格,python,pandas,Python,Pandas,我是python新手,正在尝试用python编写一个小程序。 我的要求: 我有这样一份清单: 假日=['2018年1月1日'、'2018年1月26日'、'2018年3月2日'、'2018年3月30日'] 我有一个熊猫数据框,打印方式如下: 现在我想在数据框中搜索与我的列表匹配的日期,如“2018年1月26日”,并想将搜索结果保存在单独的数据框中 我没有得到正确的方法来做这件事。请建议你可以使用这个方法 1。字符串匹配 如果日期格式匹配,可以直接进行字符串匹配(尽管这是一种粗糙的方法) 2。解析

我是python新手,正在尝试用python编写一个小程序。 我的要求: 我有这样一份清单: 假日=['2018年1月1日'、'2018年1月26日'、'2018年3月2日'、'2018年3月30日']

我有一个熊猫数据框,打印方式如下:

现在我想在数据框中搜索与我的列表匹配的日期,如“2018年1月26日”,并想将搜索结果保存在单独的数据框中

我没有得到正确的方法来做这件事。请建议你可以使用这个方法


1。字符串匹配

如果日期格式匹配,可以直接进行字符串匹配(尽管这是一种粗糙的方法)

2。解析日期时间(正确方式)

首先解析日期,然后进行匹配

a。解析df日期

b。解析列表中的日期

然后进行过滤-

df2 = df[df['date'].isin(holiday_parsed)]
.isin()
是一种方便的熊猫搜索方法,可以使用列表搜索熊猫系列


希望有帮助

粘贴数据帧的代码。请缩进您的代码,使您的文章可读性好!pandas reqd的最低版本是什么?我正在开发最新的稳定版本,所以我想这会起作用。对不起,我不知道;I don’我不知道所需的最低版本,
inplace
参数是一个0.18版本的添加,因此我猜它将运行0.18或更高版本,如果不是更多的话……感谢您的帮助。我还可以找到一种更简单的过滤方法:holiday=df[df[“date”].isin([‘2018年1月1日’、‘2018年1月26日’、‘2018年3月2日’、‘2018年3月30日’、‘2018年8月15日’、‘2018年8月22日’、‘2018年10月2日’、‘2018年10月19日’、‘2018年11月7日’、‘2018年11月8日’、‘2018年11月9日’、‘2018年12月25日]]@Jagdish你做的基本上是一样的。我只是把列表放在一个变量中,你直接把列表放进去。谢谢Vivek,我知道了。你能帮我解决另一个问题吗
df2 = df[df['date'].isin(holiday)]
df['date'] = pd.to_datetime(df['date'], format='%d %B %Y')
import datetime as dt
holiday = ['1 January 2018','26 January 2018','2 March 2018','30 March 2018']
holiday_parsed = [dt.strptime(i, format='%d %B %Y') for i in holiday]
df2 = df[df['date'].isin(holiday_parsed)]