Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/301.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何根据包含条件筛选出数据帧行?_Python_Pandas_Dataframe - Fatal编程技术网

Python 如何根据包含条件筛选出数据帧行?

Python 如何根据包含条件筛选出数据帧行?,python,pandas,dataframe,Python,Pandas,Dataframe,我有下面的数据框 df = pd.DataFrame({'vals': [1, 2, 3, 4, 5], 'ids': ['News: Latest', 'News', 'Cricket', 'Football', 'Football Match: India']}) print(df) vals ids 0 1 News: Latest 1 2 News 2 3

我有下面的数据框

df = pd.DataFrame({'vals': [1, 2, 3, 4, 5], 'ids': ['News: Latest', 'News', 'Cricket', 'Football', 'Football Match: India']})
print(df)

   vals                    ids
0     1           News: Latest
1     2                   News
2     3                Cricket
3     4               Football
4     5  Football Match: India
我有一个输入数组,我想通过它检查df并过滤掉相应的数据

valueToFilter = ["News", "India"]
我想要的输出

   vals                    ids
0     1           News: Latest
1     2                   News
2     5  Football Match: India
有谁能指导我如何做到这一点吗?

你可以试试这个-

>>> import pandas as pd
>>> df = pd.DataFrame({'vals': [1, 2, 3, 4, 5], 'ids': ['News: Latest', 'News', 'Cricket', 'Football', 'Football Match: India']})
>>> valueToFilter = ["News", "India"]
>>> filter_mask = df['ids'].str.contains('|'.join(valueToFilter))
>>> 
>>> df.loc[filter_mask]
   vals                    ids
0     1           News: Latest
1     2                   News
4     5  Football Match: India

这将有助于: