Повторная выборка набора данных на основе 2 уникальных столбцов - PullRequest
1 голос
/ 21 октября 2019

У меня есть набор данных, в котором я извлек 2 столбца: date_1 и date_2. размер кадра данных составляет 800 записей.

У меня есть еще один кадр данных, имеющий 20000 записей с date_1 и date_2, так что есть дублированные значения и дополнительные значения. Я хочу удалить значения, которых нет в первом кадре данных (date_1, date_2 комбинация) из второго кадра данных и сохранить их в другом месте. Может ли кто-нибудь помочь мне понять достижение того же самого.

РЕДАКТИРОВАТЬ: У меня есть еще один столбец в кадре данных с именем value_1. Это агрегированная стоимость. Я хочу распределить значение столбца и по записям, созданным таким образом, чтобы итоговое значение для даты_1, даты_2 во втором кадре данных складывалось в значение кадра данных1

пример:

df1

date_1     date_2    value 
1/1/2019   2/2/2019  1000

Ожидаемый df2

date_1     date_2    value 
1/1/2019   2/2/2019  300
1/1/2019   2/2/2019  10
1/1/2019   2/2/2019  90
1/1/2019   2/2/2019  500
1/1/2019   2/2/2019  50
1/1/2019   2/2/2019  50

Спасибо

1 Ответ

1 голос
/ 21 октября 2019

Используйте DataFrame.merge с параметром indicator и затем фильтруйте по eq для == с boolean indexing, для фильтра удаленных строк с ~ для инвертированиямаска:

df = df2.merge(df1, on=['date_1', 'date_2'], how='left', indicator=True)

mask = df['_merge'].eq('both')
df21 = df[mask]

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