Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

Python Pandas - แสดงแถวเฉพาะจำนวนที่ต้องการจาก DataFrame ด้วย head()

เมธอด head(n) ใช้แสดง n แถวแรก (top n rows)** ของ DataFrame ค่า default คือ 5 แถว เหมาะสำหรับตรวจสอบข้อมูลเบื้องต้น (Data Inspection) อย่างรวดเร็ว

ขั้นตอนการทำงาน

1. โหลดข้อมูล

import pandas as pd

dataFrame = pd.read_csv(r"C:\Users\amit_\Desktop\CarRecords.csv")

2. ใช้ head() แสดงจำนวนแถวที่ต้องการ

# แสดง 5 แถวแรก (default)
print(dataFrame.head())

# แสดง 10 แถวแรก
print(dataFrame.head(10))

# แสดง 3 แถวแรก
print(dataFrame.head(3))

โค้ดตัวอย่างสมบูรณ์

import pandas as pd

dataFrame = pd.read_csv(r"C:\Users\amit_\Desktop\CarRecords.csv")
print("DataFrame:\n", dataFrame)

# แสดง 5 แถวแรก
print("\nFirst 5 rows:\n", dataFrame.head(5))

ผลลัพธ์

DataFrame:
        Car      Place  UnitsSold
0      Audi  Bangalore         80
1   Porsche     Mumbai        110
2  RollsRoyce      Pune        100
3      BMW     Delhi          95
4  Mercedes  Hyderabad         80
5  Lamborghini Chandigarh         80
6      Audi     Mumbai        100
7  Mercedes      Pune        120
8  Lamborghini   Delhi        100

First 5 rows:
       Car     Place  UnitsSold
0     Audi  Bangalore         80
1  Porsche     Mumbai        110
2 RollsRoyce      Pune        100
3     BMW     Delhi          95
4 Mercedes  Hyderabad         80

เมธอดคู่คู่กับ head()

เมธอดคำอธิบายตัวอย่าง
head(n)n แถวแรกdf.head(10)
tail(n)n แถวสุดท้ายdf.tail(5)
sample(n)n แถวสุ่มdf.sample(3)
iloc[:n]n แถวแรก (by position)df.iloc[:5]
iloc[-n:]n แถวสุดท้ายdf.iloc[-5:]

ตัวอย่างเพิ่มเติม

# แสดง 3 แถวแรก และ 3 แถวสุดท้ายพร้อมกัน
print("Head 3:\n", df.head(3))
print("\nTail 3:\n", df.tail(3))

# แสดงสุ่ม 2 แถว (seed เพื่อ reproducible)
print("\nRandom 2:\n", df.sample(n=2, random_state=42))

# ตั้ง index ให้สวย แล้ว head
df.set_index('Car').head()

กรณีใช้งานจริง

  • ตรวจสอบโครงสร้างข้อมูลหลัง read_csv, merge, groupby
  • Debug pipeline: print(df.pipe(func).head())
  • สร้างรายงานตัวอย่าง: df.head(10).to_markdown()
  • ใน Jupyter: พิมพ์ df.head() ท้ายเซลล์ จะแสดงตารางสวยอัตโนมัติ

⚠️ หมายเหตุ

  • head() ไม่คัดลอกข้อมูล (view) การแก้ไขผลลัพธ์อาจส่งผลต่อ DataFrame ต้นฉบับ
  • ถ้าต้องการ copy: df.head(5).copy()
  • DataFrame ใหญ่มาก (<1M rows) head() ยังเร็วมาก เพราะไม่ต้องโหลดทั้งชุด