Выберите строки, значение столбца которых соответствует списку значений в другом столбце - PullRequest
0 голосов
/ 18 июня 2019

У меня есть 1-й кадр данных с именем 'permits_df' со столбцом с именем 'FSA'.

> permits_df.head()
    FSA Licence No.           Category              Operating Name
0   M9N B02-4741962 PRIVATE TRANSPORTATION COMPANY  TAXIFY
1   M3J B02-4728645 PRIVATE TRANSPORTATION COMPANY  INSTARYDE
2   M6K B02-4653451 PRIVATE TRANSPORTATION COMPANY  UBER CANADA
3   M2J B02-4691773 PRIVATE TRANSPORTATION COMPANY  FACEDRIVE
4   M8Z B02-4714142 PRIVATE TRANSPORTATION COMPANY  RIDEIN

У меня есть 2-й кадр данных с именем 'hood_df' со столбцом с именем 'list_of_fsa'

    CTUID     CTNAME CMAPUID PRUID HOODNUM      HOODNAME     FCOUNT list_of_fsa
0   5350218.0   218.0   35535   35  16      Stonegate-Queensway 4   M6S,M8X,M8Y,M8Z
1   5350217.0   217.0   35535   35  16      Stonegate-Queensway 4   M6S,M8X,M8Y,M8Z
2   5350216.0   216.0   35535   35  16      Stonegate-Queensway 4   M6S,M8X,M8Y,M8Z
3   5350215.0   215.0   35535   35  16      Stonegate-Queensway 4   M6S,M8X,M8Y,M8Z
4   5350219.0   219.0   35535   35  16      Stonegate-Queensway 4   M6S,M8X,M8Y,M8Z


type(hood_df['list_of_fsa'][0])
> str

Для каждого FSA в permits_df['FSA'] мне нужно сравнить его со значениями всех строк FSA в hood_df['list_of_fsa'].Если происходит совпадение в FSA, мне нужно объединить эту запись из hood_df с записью permits_df, где было найдено совпадение input_FSA.

Проблема для меня заключается в том, что я должен сравниватьinput_FSA в permit_df['FSA'] и COLLECTION FSA в hood_df['list_of_fsa'].Было бы легко сделать inner join с использованием df.merge(), если бы hood_df['list_of_fsa'] содержал только 1 FSA внутри него.Но я не уверен, как найти соответствие между M8Z и M6S,M8X,M8Y,M8Z, а затем сделать df.merge().Как мне поступить?

Есть похожие вопросы о переполнении стека, но они не помогают, так как мне нужно использовать 2 разных кадра данных и не выбирать записи из одного и того же кадра данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...