logo
Loading...

cross_val_score的問題 - Cupoy

您好:在程式範例中,是這樣寫的:train_num = train_Y.shape[0]df_mn ...

ml100-3-d12,ml100-3

cross_val_score的問題

2019/09/08 上午 10:53
機器學習共學討論版
林修德
觀看數:81
回答數:2
收藏數:0
ml100-3-d12
ml100-3

您好:

在程式範例中,是這樣寫的:

train_num = train_Y.shape[0]

df_mn = df.fillna(df.mean())

train_X = df_mn[:train_num]

estimator = LinearRegression()

cross_val_score(estimator, train_X, train_Y, cv=5).mean()

疑問如下:

為什麼在train_X 只用df_mn[:train_num]部分的資料進行分析?

train_num以後的資料是直接忽視嗎?

空缺值卻是用完整的df_mn.mean()填補?而不是用df_mn[:train_num].mean()填補?

還是我漏了什麼需要再看哪些課程?


以上,謝謝。

回答列表

  • 2019/09/08 下午 02:43
    張維元 (WeiYuan)
    贊同數:2
    不贊同數:0
    留言數:0

    為什麼在train_X 只用df_mn[:train_num]部分的資料進行分析?train_num以後的資料是直接忽視嗎?


    => 因為 我們要把 train_X 跟 train_Y 合併,因此用取的是 train_Y 的數量。如果 train_X 跟 train_Y 一樣多,[:train_num] 即取到全部的資料。如果 train_Y 多於 train_X ,的確會把  train_num 以後的資料直接忽視。

  • 2019/09/08 下午 02:43
    張維元 (WeiYuan)
    贊同數:2
    不贊同數:0
    留言數:0

    空缺值卻是用完整的df_mn.mean()填補?而不是用df_mn[:train_num].mean()填補?


    => 其實這邊應該都可以,填補只要用一個「大概不要影響太多」的值就好