cdf=app_train.OBS_60_CNT_SOCIAL_CIRCLE.value_counts().sort_index().cumsum()程式執行方式?
2019/05/30 下午 10:54
機器學習共學討論版
蔡承邑
觀看數:20
回答數:3
收藏數:0
ml100-2
ml100-2-d06
value_counts()
sort_index()
cumsum()
特助您好:
我想問這一段是怎麼執行的?我查了每一個function的作用,但還是不知道整句的意思。
cdf=app_train.OBS_60_CNT_SOCIAL_CIRCLE.value_counts().sort_index().cumsum()
感謝您!
回答列表
-
2019/05/31 上午 00:54Seanyu.TW贊同數:4不贊同數:0留言數:1
Hi,
程式的運行是依序執行的,所以它的意思是首先,以 OBS_60_CNT_SOCIAL_CIRCLE 這欄的數值做
1. value_counts() --> 記算各獨立值的個數,接下來
2. 依照這些獨立值的名稱排序
3. 將這些數值做累積加總
用一個簡單的範例來說,假設你有一個簡單的欄位表示年齡: {yo10, yo20, yo10, yo15, yo15}
那麼分別你會得到
step1. 依序記數
yo10: 2
yo20: 1
yo15: 2
step2. 依 index 排序
yo10: 2
yo15: 2
yo20: 1
step3. 數值累加
yo10: 2
yo15: 4
yo20: 5
概念上大概是這樣。
-
2019/05/31 上午 00:56Seanyu.TW贊同數:0不贊同數:0留言數:2
BTW,其實你也可以從後面一項一項拔掉,觀察執行後的結果,自己體會應該會更深刻。
-
2019/05/31 上午 10:02張維元 (WeiYuan)贊同數:1不贊同數:0留言數:1
通常看到這種很複雜的程式,我也會建議像樓上 Sean 專家講的,一層一層拆開來執行。
先看 app_train 是什麼,再看 app_train.OBS_60_CNT_SOCIAL_CIRCLE 是什麼,以此類推...