[問題]groupby 做邏輯判斷?

作者: gene50814 (genechen)   2020-05-03 16:46:50
各位大大好
小弟有個時間序列的資料
範例如下:
https://i.imgur.com/1Z6Or19.jpg
小弟想做的事是要算每個月各公司市值的中位數 若公司大於等於中位數則新的column給
值’big’,反之則’small’
想完成的感覺如下圖:
https://i.imgur.com/1urJNVp.jpg
小弟想應該是要先把date groupby起來,但不知道該如何做後續的邏輯判斷
請各位大大指教了 謝謝
作者: yuasa (XD)   2020-05-03 20:09:00
你用pandas嗎?這兩個表除了多了B/S欄差在哪?你的B/S決定的條件是?
作者: TitanEric (泰坦)   2020-05-03 22:27:00
樓上你沒看內文齁
作者: gene50814 (genechen)   2020-05-04 01:37:00
是用pandas的 後來我是用join把groupby之後的series加到原本的df再做邏輯判斷 不知道有沒有更好的作法?
作者: moodoa3583 (金牌台灣啤酒)   2020-05-04 12:52:00
如果是用data[B/S] = data[MarketValue].apply(lambdax:True if x >np.median(data[MarketValue]) else False) 呢?*>=
作者: lycantrope (阿寬)   2020-05-12 10:05:00
for date, tempdf in data.groupby("date"):BS = tempdf["Price"] > tempdf["Price"].median()df.loc[BS.index,"B/S"] = BS打錯df改成date data.loc[BS.index,"BS"] = BS把groupby 當iter for loop 判斷邏輯直接輸入data

Links booklink

Contact Us: admin [ a t ] ucptt.com