เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

การเขียน iterator เพื่อโหลดข้อมูลเป็นส่วน ๆ (1)

อีกวิธีหนึ่งในการอ่านข้อมูลที่มีขนาดใหญ่เกินกว่าจะเก็บไว้ในหน่วยความจำได้ทั้งหมด คือการอ่านไฟล์เป็น DataFrame ทีละส่วน เช่น ส่วนละ 100 แถว ตัวอย่างเช่น ด้วย pandas (import เป็น pd) สามารถใช้ pd.read_csv(filename, chunksize=100) ได้ คำสั่งนี้จะสร้าง reader object ที่ทำงานแบบ iterable ซึ่งหมายความว่าสามารถใช้ next() กับมันได้

ในแบบฝึกหัดนี้ จะได้ลองอ่านไฟล์เป็น DataFrame ขนาดเล็กด้วย read_csv() โดยใช้ข้อมูล World Bank Indicators จากไฟล์ 'ind_pop.csv' ที่อยู่ใน directory ปัจจุบัน เพื่อดูตัวชี้วัดประชากรในเขตเมืองของหลายประเทศในหลายปี

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

Python Toolbox

ดูคอร์ส

คำแนะนำการฝึกหัด

  • ใช้ pd.read_csv() เพื่ออ่านไฟล์ 'ind_pop.csv' โดยกำหนดขนาดของแต่ละส่วนเป็น 10 แล้วกำหนดผลลัพธ์ให้กับตัวแปร df_reader
  • แสดงผลสอง chunk แรกจาก df_reader

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Import the pandas package
import pandas as pd

# Initialize reader object: df_reader
df_reader = ____(____, ____)

# Print two chunks
print(____)
print(____)
แก้ไขและรันโค้ด