Python 基于值列表创建多个数据帧并使用OR运算符进行查询

Python 基于值列表创建多个数据帧并使用OR运算符进行查询,python,pandas,ipython,Python,Pandas,Ipython,我想通过基于列表中的值进行过滤来创建多个数据帧 如果我的名为month的列表和名为df的数据框包含[Jan,Feb,Mar]。这是我的密码 month = df.month.unique().tolist() for item in month: [item] = df[df[month]==[item]] 然后,如果我简单地键入并运行JAN Ipython,那么它将仅以表格形式显示一月的数据 更新-关键错误:“2014年1月” 我最初认为这是列值中的间距问题,所以我用下划线替换了它们

我想通过基于列表中的值进行过滤来创建多个数据帧

如果我的名为month的列表和名为df的数据框包含[Jan,Feb,Mar]。这是我的密码

month = df.month.unique().tolist()
for item in month:
    [item] = df[df[month]==[item]]
然后,如果我简单地键入并运行JAN Ipython,那么它将仅以表格形式显示一月的数据

更新-关键错误:“2014年1月”

我最初认为这是列值中的间距问题,所以我用下划线替换了它们,但在只包含一个单词而没有空格的列中也不起作用


有什么想法吗?

看看昨天问过的这个问题:当你想比较多个条件时,你必须使用&、|、~操作符而不是AND,或者不使用AND,所以你的查询应该是:qtr1=df[df['month']==JAN | df['month']==FEB | df['month']=MAR]事实上,如果您的月份值实际上是字符串,那么以下操作将起作用:qtr1=df[df['month'].isin[JAN,FEB,MAR]]谢谢Paul,但我还无法将其用于创建作为原始数据集子集的单独数据帧。我想为一年中的每个月创建一个单独的数据框,其中数据框的名称是该月的名称,即1月、2月等。然后我可以分别绘制和/或操作每个月,并查找模式。