Pandas:像这样过滤:"value" in list within Series

Pandas: Filter like: "value" in list within Series

例如,我们有一个名称列表和名称中每个单词的哈希值:

data = [
  ['John Doe', ['JN','D0']],
  ['John Mitchel', ['JN','MTL']],
  ....
]
df = pd.DataFrame(data, columns=['name', 'hashes'])

是否可以通过单个哈希值过滤(搜索)。换句话说,找到所有带有哈希 'JN' 的记录,例如。

我试过类似的方法:

df.hashes[lambda x: 'JN' in x]

甚至:

df['JN' in df.hashes]

运气不好。

使用apply:

data = [
  ['John Doe', ['JN','D0']],
  ['John Mitchel', ['JN','MTL']],
  ['John Doe1', ['AA','MTL']]
]
df = pd.DataFrame(data, columns=['name', 'hashes'])
print (df)
           name     hashes
0      John Doe   [JN, D0]
1  John Mitchel  [JN, MTL]
2     John Doe1  [AA, MTL]

print (df[df.hashes.apply(lambda x: 'JN' in x)])
           name     hashes
0      John Doe   [JN, D0]
1  John Mitchel  [JN, MTL]