pandas количество слияния как решить? - PullRequest
0 голосов
/ 08 мая 2020

A

    |Key1|Key2|Gender|
    |1234|5678|Male  |
    |1234|5678|Female|
    |0000|1111|Male  |
    |0000|1111|Female|

B

|Key1|Key2|Number|
|1234|5678|100   |
|0000|1111|500   |

df = pd.merge (A, B, on = ['key1', 'key2'], how = 'external' ) производит ниже для слияния.

|Key1|Key2|Gender|Number|
|1234|5678|Male  |100   |
|1234|5678|Female|100   |
|0000|1111|Male  |500   |
|0000|1111|Female|500   |

Однако я ищу ниже, где строки 1 и 2 разделяют 100, строки 3 и 4 разделяют число 500. Это можно легко сделать с помощью excel, но как это сделать с помощью pandas.

|Key1|Key2|Gender|Number                   |
|1234|5678|Male  |100, shared with row 2   |
|1234|5678|Female|                         |
|0000|1111|Male  |500, shared with row 4   |
|0000|1111|Female|                         |

Обратите внимание, что в фактическом наборе данных есть более 10 столбцов, таких как столбец «Число», которые необходимо объединить.

* Извиняюсь, я исправил вышесказанное, хочу пояснить, что дубликатов нет, а только строки с одинаковыми общими ключами (key1 и key2)

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