開始使用免費開始

以底層陣列取代 .iloc

現在你已經更了解 DataFrame 的內部結構,讓我們把你先前的一段分析改寫為使用 DataFrame 的底層陣列。你會回顧先前用 .iloc 逐列計算勝率(win percentage)的程式碼:

def calc_win_perc(wins, games_played):
    win_perc = wins / games_played
    return np.round(win_perc,2)

win_percs_list = []

for i in range(len(baseball_df)):
    row = baseball_df.iloc[i]

    wins = row['W']
    games_played = row['G']

    win_perc = calc_win_perc(wins, games_played)

    win_percs_list.append(win_perc)

baseball_df['WP'] = win_percs_list

讓我們把這段分析改成用陣列,而不是 .iloc。一個 DataFrame(baseball_df)已載入到你的工作階段。

本練習屬於課程

撰寫高效的 Python 程式碼

檢視課程

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# Use the W array and G array to calculate win percentages
win_percs_np = calc_win_perc(baseball_df[____].____, baseball_df[____].____)
編輯並執行程式碼