Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/354.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 如何筛选列表的DataFrame列中包含特定项的列_Python_Python 2.7_Pandas - Fatal编程技术网

Python 如何筛选列表的DataFrame列中包含特定项的列

Python 如何筛选列表的DataFrame列中包含特定项的列,python,python-2.7,pandas,Python,Python 2.7,Pandas,如果我想过滤一列字符串中包含特定术语的字符串,我可以这样做: df = pd.DataFrame({'col':['ab','ac','abc']}) df[df['col'].str.contains('b')] 返回: col 0 ab 2 abc 如何筛选包含特定项目的列表列?例如,从 df = pd.DataFrame({'col':[['a','b'],['a','c'],['a','b','c']]}) 如何获取包含“b”的所有列表 col 0

如果我想过滤一列字符串中包含特定术语的字符串,我可以这样做:

df = pd.DataFrame({'col':['ab','ac','abc']})
df[df['col'].str.contains('b')]
返回:

   col
0   ab
2  abc
如何筛选包含特定项目的列表列?例如,从

df = pd.DataFrame({'col':[['a','b'],['a','c'],['a','b','c']]})
如何获取包含“b”的所有列表

         col
0     [a, b]
2  [a, b, c]

你可以像这样使用apply

In [13]: df[df['col'].apply(lambda x: 'b' in x)]
Out[13]: 
         col
0     [a, b]
2  [a, b, c]

虽然通常情况下,将列表存储在
数据框中有点尴尬-您可能会发现一些更容易使用的不同表示形式(列表中每个元素的列、多索引等)。

@chrisb如果您有一个大的
数据框
,并且您不知道条目的数量,您将如何处理(或者希望避免出现大量列)?