亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

即使列中不存在數據,Pandas也會使用自定義列進行透視

即使列中不存在數據,Pandas也會使用自定義列進行透視

白衣非少年 2023-08-08 15:42:07
我有以下示例表:df = pd.DataFrame({'Name': ['Bob', 'Bob', 'Susan', 'Susan', 'Jane','Jane'],                   'Status': ['Paid', 'Paid', 'Paid OTP', 'Overdue', '', 'Upsell'],                   'Amt': [100, 200, 300, 200, 0,60]})我正在嘗試使用以下代碼創建一個數據透視表(可以使用):table = pd.pivot_table(df, values='Amt', index=['Name'],columns=['Status'], aggfunc=np.sum, fill_value=0)但是我需要包含一個持久列,例如:“待付款”,無論表中是否有值。這樣做的原因是,如果該特定月份填寫了“待付款”,則顯示 0 值。
查看完整描述

2 回答

?
當年話下

TA貢獻1890條經驗 獲得超9個贊

Index.union如果不存在,則用于向列名稱添加新值DataFrame.reindex


cols = table.columns.union(['To Be Paid'], sort=False)

table = table.reindex(cols, axis=1, fill_value=0)

print (table)

? ? ? ? ? Overdue? Paid? Paid OTP? Upsell? To Be Paid

Name? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

Bob? ? 0? ? ? ? 0? ?300? ? ? ? ?0? ? ? ?0? ? ? ? ? ?0

Jane? ?0? ? ? ? 0? ? ?0? ? ? ? ?0? ? ? 60? ? ? ? ? ?0

Susan? 0? ? ? 200? ? ?0? ? ? ?300? ? ? ?0? ? ? ? ? ?0


查看完整回答
反對 回復 2023-08-08
?
交互式愛情

TA貢獻1712條經驗 獲得超3個贊

您還可以將列轉換Status為分類,并確?!按犊睢笔钱斍邦悇e(即使它未在數據中表示)


df = pd.DataFrame({'Name': ['Bob', 'Bob', 'Susan', 'Susan', 'Jane','Jane'],

                   'Status': ['Paid', 'Paid', 'Paid OTP', 'Overdue', '', 'Upsell'],

                   'Amt': [100, 200, 300, 200, 0,60]})


df["Status"] = pd.Categorical(df["Status"])

if "To Be Paid" not in df["Status"].cat.categories:

    df["Status"].cat.add_categories("To Be Paid", inplace=True)



df.pivot_table(values='Amt', index='Name', columns='Status', aggfunc=np.sum, fill_value=0, dropna=False)

Status     Overdue  Paid  Paid OTP  Upsell  To Be Paid

Name                                                  

Bob     0  0        300   0         0       0         

Jane    0  0        0     0         60      0         

Susan   0  200      0     300       0       0 


查看完整回答
反對 回復 2023-08-08
  • 2 回答
  • 0 關注
  • 159 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號