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

Python Pandas - นับจำนวนแถวและคอลัมน์ใน DataFrame ด้วย shape

แอตทริบิวต์ shape ของ DataFrame คืนค่าเป็น tuple (rows, columns) แสดงจำนวนแถวและคอลัมน์ทันที โดยไม่ต้องคำนวณ นี่คือวิธีเร็วที่สุดในการตรวจสอบขนาดข้อมูล

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

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

import pandas as pd

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

2. ใช้ .shape

rows, cols = dataFrame.shape
print(f"Rows: {rows}, Columns: {cols}")

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

import pandas as pd

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

# นับแถวและคอลัมน์
print("\nNumber of rows and columns:", dataFrame.shape)

# แสดง 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

Number of rows and columns: (9, 3)

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

วิธีอื่นๆ นับแถวและคอลัมน์

วิธีคืนค่าคำอธิบาย
df.shapetuple (rows, cols)เร็วที่สุด Property ไม่ใช่ method
len(df)int (rows)นับแถวเท่านั้น เทียบเท่า df.shape[0]
df.ndimint (2)มิติของ DataFrame (คงที่ = 2)
df.sizeint (rows × cols)จำนวนเซลล์ทั้งหมด (9×3=27)
len(df.columns)int (cols)นับคอลัมน์ เทียบเท่า df.shape[1]
df.axeslist [index, columns]ดู index และ columns จริง

การใช้งานร่วมกับ head/tail

# แสดง n แถวแรก
df.head(n)      # default n=5
df.head(10)

# แสดง n แถวสุดท้าย
df.tail(n)
df.tail(3)

# แสดงสุ่ม n แถว
df.sample(n=3)

# ตรวจสอบว่ามีข้อมูลหรือไม่
if len(df) > 0:
    print("DataFrame ไม่ว่าง")
else:
    print("DataFrame ว่าง")

ประโยชน์ในการทำงานจริง

  • ตรวจสอบหลัง read_csv ว่าอ่านข้อมูลครบหรือไม่
  • ตรวจสอบหลัง merge, concat, dropna ว่าขนาดเปลี่ยนไปอย่างไร
  • ใช้ใน loop ตรวจสอบขนาด chunk
  • คำนวณ memory usage: df.memory_usage(deep=True).sum()