1

データ セットを重複排除し、重複排除データセットを別のデータ フレームに変換しようとしています。ただし、重複排除されたデータセットには、変数によるグループとして最初の列があります

import pandas as pd
df = pd.DataFrame({ 'Cust':list('AAABBB'),'Dt':list('XXYYZZ'),'PA1':list('HHHMMH'),
                    'PA2': list('MLMMMM'),'PA3':[1,2,3,3,3,1] })

df2 = df.groupby('[Cust','Dt'], as_index=False).sum()

for col in ['PA1','PA2','PA3']:
    df2[col] = df.groupby(['Cust','Dt'],as_index=False)[col].apply( lambda x: 
                                              '&'.join( x.astype(str).unique() ))

これにより、エラーが発生 TypeError('挿入された列の互換性のないインデックス'

TypeError: 挿入された列のインデックスがフレーム インデックスと互換性がありません

出力を別のデータ フレーム (df3) にコピーして (元の日付の列の順序を保持する - df) として表示したい理由は、重複排除されたデータ要素をデータベースにロードする必要があり、元のレイアウト (列の順序) (および db スキーマ) と重複排除されたデータセットは同じである必要があります。

Cust Dt     PA1    PA2  PA3
A    X    1&2&3    H    M&L
B    Y    3&1     M&H    M

ありがとうPMV

4

1 に答える 1