![](/img/trans.png)
[英]Pandas - Create new column - if another column value is in list (correct way)
[英]Pandas- correct way to create a new column based on the sum of rows of another column (value trying to be set on a copy)?
我有一個包含日期,名稱和值的數據框,我要做的就是創建一列,該列是按日期得出的總值總和的輸出,然后將該總和減去該日期每個名稱的值。 我已經能夠做到這一點,但是卻遇到了常見的錯誤: A value is trying to be set on a copy of a slice from a DataFrame.
這是我的代碼: df['ex_Term'] = df.groupby('name').Term.transform('sum') - df['Term']
它告訴我使用iloc函數,在閱讀文檔並嘗試使用此代碼后,它仍然不起作用: df['ex_Term'] = df.groupby('name').loc[:,('Term')].sum()- df['Term']
示例df:
name Country value delta
mike UK 1 -1
mike US 2 1
IIUC嘗試使用assgin
df=df.assgin(ex_Term=df.groupby('name').Term.transform('sum') - df['Term'])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.