2つのDataframeを結合して2段組にしたい
解決したいこと
会社の業務効率化の一環で売上日報をPythonで作ろうと考えております。
会社のとある業務ソフトから吐き出したエクセルファイルから
Pandasを利用してデータ操作をしようとしております。
まず仮の元データです。
金額や個数が不自然なところは無視してください。
_df = pd.DataFrame(
columns = ['売上日','得意先名','コード','製品名','売上金額','売上個数'],
data = [['2022-1-1','会社A','a00','製品A',100,1],
['2022-1-1','会社B','b00','製品B',200,2],
['2022-1-1','会社C','c00','製品C',300,3],
['2022-1-1','会社A','a00','製品A',1000,10],
['2022-1-1','会社B','b00','製品B',2000,20],
['2022-1-1','会社C','c00','製品C',3000,30],
['2022-1-1','会社A','a00','製品A',10000,100],
['2022-1-1','会社B','b00','製品B',20000,200],
['2022-1-1','会社C','c00','製品C',30000,300]])
赤枠の様に、[売上金額]と[売上個数]の2段で集計を行いたかったのです。
そこでpandasのpivot_tableメソッドを知り実行してみました。
引数valueに[売上金額]と[売上個数]の2つを入れてみたところそれぞれが横並びになりました。
df = _df.pivot_table(index=['売上日','得意先名'], columns=['コード','製品名'], values=['売上個数'], aggfunc='sum', fill_value=0, margins=True, margins_name='合計')
pivot_tableメソッドで一度に理想の表を作ることは難しいと思い
[売上金額]と[売上個数]のそれぞれでまずpivot_tableを実行し
後で2つを結合できないかと考えました。
お聞きしたいことは以下になります。
①そもそも一度に2段組にするpivot_tableの方法があるか
②①が無理として2つの表を結合して理想の表の様にすることができるか。
0