แทนที่ .iloc ด้วย underlying arrays
เมื่อเข้าใจโครงสร้างภายในของ DataFrame ดีขึ้นแล้ว ลองอัปเดตการวิเคราะห์ก่อนหน้าให้ใช้ประโยชน์จาก underlying arrays ของ DataFrame กัน โดยจะกลับมาดูการคำนวณ win percentage ที่ทำแบบ row by row ด้วยเมธอด .iloc:
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
คราวนี้จะอัปเดตการวิเคราะห์นี้ให้ใช้ arrays แทนเมธอด .iloc โดยมี DataFrame (baseball_df) โหลดไว้ในเซสชันของคุณแล้ว
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การเขียน Python Code ที่มีประสิทธิภาพ
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Use the W array and G array to calculate win percentages
win_percs_np = calc_win_perc(baseball_df[____].____, baseball_df[____].____)