以下は既存のdfです
data = np.array([['','Market','Product Code','Week','Sales','Units'],
['Total Customers',123,1,500,400],
['Total Customers',123,2,400,320],
['Major Customer 1',123,1,100,220],
['Major Customer 1',123,2,230,230],
['Major Customer 2',123,1,130,30],
['Major Customer 2',123,2,20,10],
['Total Customers',456,1,500,400],
['Total Customers',456,2,400,320],
['Major Customer 1',456,1,100,220],
['Major Customer 1',456,2,230,230],
['Major Customer 2',456,1,130,30],
['Major Customer 2',456,2,20,10]])
df =pd.DataFrame(data)
「市場」列の行の値 (総顧客数) と「市場」列の行の値 (主要顧客 1 + 主要顧客 2) の値の差に基づいて、新しい行を作成したいと考えています。「市場」列の新しい行の値を「残りの顧客」として割り当て、同じ df 内に追加したいと考えています。
全体として、私は基本的に市場の残りの売上とユニットの「ギャップ」を計算しようとしています
これは私がこれまでに loc を使用して試したことですが、キーエラーが発生し続けます。誰でも助けることができますか?
df.loc[df['Market'] == 'Remaining Customers'] =
df.loc[df['Market'] == 'Total Customers']-
(df.loc[df['Market'] == 'Major Customer 1']+df.loc[df['Market'] == 'Major Customer 2'])