2017-02-01 3 views
0

Например у нас есть список имен и хэши каждого слова в названии:Панды: Фильтр, как: «значение» в списке в серии

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] 

и не удачи.

ответ

1

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] 
Смежные вопросы