Notes & software courses · Free to learn
Aph's Blog
On this page

รู้จัก pandas (เบื้องต้น)

👋 อ่านฟรีทั้งหมดบน Aph's Blog — เนื้อหาภาษาไทย ทำตามทีละหน้าใน sidebar ได้เลย หากมีข้อเสนอแนะหรืออยากให้เพิ่มหัวข้อไหน บอกได้เสมอ

เครื่องมือจัดการข้อมูลตารางที่ทรงพลัง — รู้จักไว้พอใช้งานได้ ก่อนลงลึกถ้าเล็งสาย Data

pandas คือไลบรารียอดนิยมสำหรับจัดการข้อมูลตาราง (เหมือน Excel แต่ในโค้ด) ถ้าทำงานกับข้อมูลจำนวนมาก pandas เร็วและสะดวกกว่าเขียน loop เอง หัวข้อนี้แนะนำให้รู้จักพอใช้งานได้ — ถ้าเล็งสาย Data/AI ค่อยลงลึกต่อ

DataFrame & Series

DataFrame คือตาราง (มีแถว-คอลัมน์) ส่วน Series คือหนึ่งคอลัมน์ สร้างจาก dict หรืออ่านจากไฟล์ได้

python
import pandas as pd   # pip install pandas

df = pd.DataFrame({
    "name": ["Aph", "Bee", "Cha"],
    "age": [25, 30, 22],
    "city": ["BKK", "CNX", "BKK"],
})
print(df)
print(df["age"])          # หนึ่งคอลัมน์ = Series
print(df["age"].mean())   # ค่าเฉลี่ย = 25.67

อ่าน CSV ด้วย pandas

python
df = pd.read_csv("users.csv")
print(df.head())          # ดู 5 แถวแรก
print(df.shape)           # (จำนวนแถว, จำนวนคอลัมน์)
print(df.columns)         # ชื่อคอลัมน์ทั้งหมด

filter & groupby เบื้องต้น

python
# filter: เลือกแถวตามเงื่อนไข
adults = df[df["age"] >= 25]
bkk = df[df["city"] == "BKK"]

# groupby: จัดกลุ่มแล้วสรุป
print(df.groupby("city")["age"].mean())
# city
# BKK    23.5
# CNX    30.0
นี่แค่จุดเริ่มต้น

pandas มีความสามารถมากกว่านี้มาก (merge, pivot, จัดการ missing data, plot) ถ้าคุณเล็งสาย Data Analyst / Data Science / AI ให้ไปลงลึก pandas + numpy ต่อ ที่นี่แค่ให้รู้จักว่ามีเครื่องมือนี้และใช้งานพื้นฐานได้

สรุปหัวข้อนี้

  • pandas จัดการข้อมูลตาราง — DataFrame (ตาราง) / Series (คอลัมน์)
  • pd.read_csv อ่านไฟล์; .head()/.shape/.columns สำรวจข้อมูล
  • filter ด้วยเงื่อนไข df[df[...] > x]; groupby สรุปตามกลุ่ม
  • เป็นแค่เบื้องต้น — เล็งสาย Data ค่อยลงลึก pandas/numpy
แบบฝึกหัด

1) สร้าง DataFrame จาก dict แล้วหาค่าเฉลี่ยคอลัมน์ตัวเลข 2) อ่าน CSV ด้วย read_csv แล้วดู head()/shape 3) filter เลือกแถวตามเงื่อนไข 4) ใช้ groupby สรุปข้อมูลตามกลุ่ม