logo
Loading...

cumsum與loc的使用方式 - Cupoy

1.在hw中,看到有人用下面這種方式來做cdfcdf = app_train['AMT_INCOME...

ml100-2,ml100-2-d06

cumsum與loc的使用方式

2019/05/14 下午 11:51
機器學習共學討論版
陳昱叡
觀看數:19
回答數:2
收藏數:0
ml100-2
ml100-2-d06

1.在hw中,看到有人用下面這種方式來做cdf

cdf = app_train['AMT_INCOME_TOTAL'].value_counts().sort_index().cumsum()

請問 數值計數.排序.cumsum  的.cumsum是在做甚麼?


2.在最後的loc部分

app_train.loc[loc_a, loc_b].hist()

為什麼不是app_train[loc_a, loc_b].hist()   是因為後面有條件判斷([loc_a, loc_b])嗎?

回答列表

  • 2019/05/15 下午 10:00
    Seanyu.TW
    贊同數:0
    不贊同數:0
    留言數:0

    Hi, 

    1. cumsum 指的是 cumulative sum, 比方說假如有 vec = np.array([1,2,3]),則  cumsum(vec) 會等於 [1, 3, 6]


    2. 參考方式如下

    loc_a = app_train["OBS_60_CNT_SOCIAL_CIRCLE"] <= 20 
    loc_b = "OBS_60_CNT_SOCIAL_CIRCLE"  

    app_train.loc[loc_a, loc_b].hist() plt.show() # 原本的做法

    app_train[loc_a][loc_b].hist() # 你可能希望的做法

    兩個方法都是可行的。

  • 2019/05/16 下午 03:22
    張維元 (WeiYuan)
    贊同數:1
    不贊同數:0
    留言數:0

    2.在最後的loc部分

    app_train.loc[loc_a, loc_b].hist()

    為什麼不是app_train[loc_a, loc_b].hist()   是因為後面有條件判斷([loc_a, loc_b])嗎?


    => loc 是 df 的一種取資料方法,可以用來同時設定「Row」&「Column」的篩選。類似的用法還有 iloc 跟 ix。