Skip to main content
 首页 » 编程设计

python之如何根据列值比较在 python 中过滤 Pandas 数据框

2025年05月04日14三少

如果您有这样的 Pandas 数据框,则可以通过这种方式进行过滤:

df = pd.DataFrame({'name1': ['apple','pear','applepie','APPLE'], 
                'name2': ['APPLE','PEAR','apple','APPLE'] 
            }) 
df[df['name1'] != df['name2']] # works 

但是当你想比较列的上限值时,你如何过滤行呢?

df[df['name1'].upper() != df['name2'].upper()]  # does not work 

请您参考如下方法:

您需要使用 pandas.Series.str.upper()因为 df['name1'] 是一系列字符串,因此我们使用 .str用于矢量化字符串操作的字符串访问器。

df[df['name1'].str.upper() != df['name2'].str.upper()] 

输出:

       name1    name2 
2   applepie    apple