首页 > 解决方案 > 如何仅保存 DataFrame 中的那些行,其中列具有列表中的值?

问题描述

我有一个从pr2CSV加载
的 DataFrame:DataFrame

我有一个清单costs_pr2
清单

我只想保存具有costs_pr2“成本”列中的值的行。

我试过这个:

pr2 = pr2[~pr2.costs.isin(costs_pr2)]

但什么都没有改变pr2
我做错了什么?

标签: pythonpandasdataframe

解决方案


您可以使用query来实现您的目标:

costs_pr2 = ['a','b','c']
new_dataframe = pr2.query("costs in @costs_pr2",inplace=False)

否则你可以直接:

pr2.query("costs in @costs_pr2",inplace=True)

推荐阅读