Как реализовать с помощью панд "два sql результат слияния вместе" - PullRequest
2 голосов
/ 08 апреля 2019

У меня есть два кадра данных, как это:

A:

         pay  num
store                    
A001         医保   43
A001         微信   25
A001        支付宝    6
A001         现金   25
A001         通联    1
A002         医保   21
A002         微信   38
A002        支付宝   11
A002         现金   53
A003         医保   22
...
AC24         微信   29
AC24        支付宝   15
AC24         现金   51
AC3H         微信    7
AC3H         现金   15

B

       pay  num
store          
A001    医保   43
A001    微信   25
A001   支付宝    6
A001    通联    1
A002    医保   21
A002    微信   38
A002   支付宝   11
A002    现金   53
A003    医保   22
...
AC24    微信   29
AC24   支付宝   15
AC24    现金   51
AC3H    微信    7
AC3H    现金   15

Я хочу объединить A и B вместе A. (store + pay) == B. (store + pay), длина A и B не одинакова, используйте pandas, как это реализовать?

1 Ответ

0 голосов
/ 08 апреля 2019

Я считаю, что вам нужно создать MultiIndex, добавив pay к исходному index, DataFrame.set_index и параметру append=True, затем используйте Series.add и последний Series.reset_index:

a = A.set_index('pay', append=True)['num']
b = B.set_index('pay', append=True)['num']

df = a.add(b, fill_value=0).reset_index(level=1)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...