Фильтр DataFrame String Column со значениями в списке - PullRequest
0 голосов
/ 14 сентября 2018

Я пытаюсь отфильтровать свой столбец данных, который является строковым полем (здесь мы говорим о каждой записи), со списком значений, размещенных в моем списке.Вот мой текущий код:

df = pd.read_csv('Test Data.csv')
test = ['a', 'b']
test = pd.Series(test)
test = list(test.index)
df['string_field'].apply(lambda x:' '.join(x for x in str(x).split() if x in test))

Однако все, что мне удается сделать, - это удалить значения из моего списка из текста в строковом поле.

1 Ответ

0 голосов
/ 14 сентября 2018

Похоже, вы пытаетесь отфильтровать список строк, используя список целых чисел ...

test = ['a', 'b']
test = pd.Series(test)
test = list(test.index)
print test
>> [0, 1]

Не уверен, почему вы манипулируете test таким образом, если вы просто сохраните его как список (['a','b']), он должен дать ожидаемый результат:

import pandas as pd

df = pd.read_csv('Test Data.csv')
print df

test = ['a', 'b']

df['string_field'] = df['string_field'].apply(lambda s:' '.join(x for x in s.split() if x in test))
print df

>>
  string_field
0      a b c d
1      a 1 b 2
2        ab ba
  string_field
0          a b
1          a b
2            
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...