Python熊猫过滤

Python熊猫过滤,python,pandas,filtering,Python,Pandas,Filtering,我试图对文件进行筛选,以便保留“Cell Name”为LM-MP-NW-URBAN-screery S&SPAZA的数据行,但当我运行上述代码时,我得到 “SyntaxError:无效语法” 我用一列数字尝试了这个代码,它使用了==和符号 另外,请帮助我如何筛选多个项目-例如,在上面的代码中,我希望保留单元格名称为LM-MP-NW-URBAN-GROCERY S&SPAZA或KZN-GP-EC-URBAN_GROCERY S&SPAZA 先谢谢你 #Import libraries impor

我试图对文件进行筛选,以便保留“Cell Name”为
LM-MP-NW-URBAN-screery S&SPAZA
的数据行,但当我运行上述代码时,我得到

“SyntaxError:无效语法”

我用一列数字尝试了这个代码,它使用了
==
符号

另外,请帮助我如何筛选多个项目-例如,在上面的代码中,我希望保留单元格名称为
LM-MP-NW-URBAN-GROCERY S&SPAZA
KZN-GP-EC-URBAN_GROCERY S&SPAZA

先谢谢你

#Import libraries 
import pandas as pd
import os
import glob
#Set working directory and create list of raw files 
os.chdir(r'C:\Users\Shab7002\Documents\data science\18 10 9\nestle 708294\infant')
lorf = glob.glob('*.txt')
#Create empty dataframe and concatenate raw files 
df_mrgd = pd.DataFrame()

for file in lorf:
    df_add = pd.read_csv(file,sep='\t', encoding='latin-1')
    df_mrgd = pd.concat([df_mrgd, df_add.head(10)])
    #Filter columns
filt_col = ['PeriodVFP', 'Product name', 'MBD Name', 'Outlet name', 'Cell Name', 'Sales', 'SalesValue', 'SalesVolume']
#filter rows
df_filtered = df_mrgd[filt_col].query('Cell Name== "LM-MP-NW-URBAN-GROCERY S & SPAZA"')
 #and export concatenated data frame 
df_filtered.to_excel('mu.xlsx') 

这就是如何根据以下字段中的多个
单元格名称
值筛选行:

df_filtered = df_mrgd.loc[df_mrgd['Cell Name'].isin(["LM-MP-NW-URBAN-GROCERY S & SPAZA", "KZN-GP-EC-URBAN_GROCERY S & SPAZA"]), filt_col]

请为您的错误提供完整的回溯,而不仅仅是错误描述。非常感谢您-我已将我编译的所有筛选代码放在这里,以便其他人可以参考它们-请确认注释是否准确#筛选适用于数字,但不适用于字符df#filtered=df#mrgd[filt#col]。query('PeriodVFP<250')#filter对字符起作用,但对数字不起作用df#u filtered=df#mrgd.loc[df#u mrgd['Cell Name'].isin([“GA-URBAN-grounder L&M”,“FS-NC-URBAN-grounder S&SPAZA”,“LM-MP-NW-URBAN-grounder-grounder S&SPAZA”])、filter#col对数字起作用,而不是字符df#filtered=df####filtered=df#\u mrgd=df=df\,那是不对的。您的最后两条评论对字符和数字都有效。我从未使用过
query()
,因此我无法真正说明如何使用字符列。如何使用字符的最后一条注释?就像使用数字变量一样,但将值放在引号中。例如:
df_filtered=df_mrgd[df_mrgd['Cell Name']=='GA-URBAN-gery']