Как получить список идентификаторов из одного столбца, который не содержится в другом столбце в пандах - PullRequest
1 голос
/ 17 мая 2019

pandas dataframe имеет два столбца, в которых есть список идентификаторов, необходимых для получения идентификаторов, которые не содержатся в других столбцах

id  Column_1    Column_2
1   [1,2,5,7,9] [1,2,5,7]
2   [4,8,2,7]   [4,8,2,7]
3   [5,7,2,9]   [9] 
4   [4,7,2,9]   [3]


I want to  result like
id  Column_1    Column_2    result
1   [1,2,7]     [1,2,5,7,9] [5,9]
2   [4,8,2,7]   [4,8,2,7]   []
3   [5,7,2,9]   [9]         []
4   [4,7,2,9]   [3]         [3]

1 Ответ

1 голос
/ 17 мая 2019

Преобразовать значения в наборы и получить разницу:

df['Column_3'] = [list(set(y).difference(x)) for x, y in zip(df['Column_1'], df['Column_2'])]
print (df)
   id      Column_1         Column_2 Column_3
0   1     [1, 2, 7]  [1, 2, 5, 7, 9]   [9, 5]
1   2  [4, 8, 2, 7]     [4, 8, 2, 7]       []
2   3  [5, 7, 2, 9]              [9]       []
3   4  [4, 7, 2, 9]              [3]      [3]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...