У меня есть два DataFrames
в pandas
:Объединение двух наборов данных, чтобы сформировать булево столбец (панды)
dfm_one
data group_a group_b
0 3 a z
1 1 a z
2 2 b x
3 0 b x
4 0 b x
5 1 b z
6 0 c x
7 0 c y
8 3 c z
9 3 c z
dfm_two
data group_a group_b
0 4 a x
1 4 a y
2 4 b x
3 4 b x
4 4 b y
5 1 b y
6 1 b z
7 1 c x
8 4 c y
9 3 c z
10 2 c z
В выходе я хочу булево столбец, который указывает для dfm_one существует ли соответствующая запись данных (т.е. имеет ту же самую шкалу) в dfm_two для каждой группы group_a group_b.
Так что мой ожидается выход:
0 False
1 False
2 False
3 False
4 False
5 True
6 False
7 False
8 True
9 True
Я предполагаю, что код должен выглядеть примерно так:
dfm_one.groupby(['group_a','group_b']).apply(lambda x: ??)
и что функция внутри apply
должны использовать метод isin
.
Другим решением может быть объединение двух наборов данных, но я думаю, что это не является тривиальным, так как в DataFrame
нет уникального идентификатора.
'dfm_one.merge (dfm_two)' даст вам общие ценности – EdChum