เมธอด min() ของ Series/DataFrame ใช้หาค่าต่ำสุด (Minimum) ของคอลัมน์ตัวเลข สามารถใช้กับคอลัมน์เดียวหรือหลายคอลัมน์พร้อมกัน
ขั้นตอนการทำงาน
1. สร้าง DataFrame
import pandas as pd
dataFrame1 = pd.DataFrame({
"Car": ['BMW', 'Lexus', 'Audi', 'Tesla', 'Bentley', 'Jaguar'],
"Units": [100, 150, 110, 80, 110, 90]
})
2. หาค่าต่ำสุดของคอลัมน์ Units
min_units = dataFrame1['Units'].min()
print(f"Minimum Units: {min_units}")
โค้ดตัวอย่างสมบูรณ์
import pandas as pd
# DataFrame 1
dataFrame1 = pd.DataFrame({
"Car": ['BMW', 'Lexus', 'Audi', 'Tesla', 'Bentley', 'Jaguar'],
"Units": [100, 150, 110, 80, 110, 90]
})
print("DataFrame1:\n", dataFrame1)
print("Minimum Units:", dataFrame1['Units'].min())
# DataFrame 2
dataFrame2 = pd.DataFrame({
"Product": ['TV', 'PenDrive', 'HeadPhone', 'EarPhone', 'HDD', 'SSD'],
"Price": [8000, 500, 3000, 1500, 3000, 4000]
})
print("\nDataFrame2:\n", dataFrame2)
print("Minimum Price:", dataFrame2['Price'].min())
ผลลัพธ์
DataFrame1:
Car Units
0 BMW 100
1 Lexus 150
2 Audi 110
3 Tesla 80
4 Bentley 110
5 Jaguar 90
Minimum Units: 80
DataFrame2:
Product Price
0 TV 8000
1 PenDrive 500
2 HeadPhone 3000
3 EarPhone 1500
4 HDD 3000
5 SSD 4000
Minimum Price: 500
การใช้งาน min() แบบขยาย
# min() ทุกคอลัมน์ตัวเลข
df.min()
# min() เฉพาะคอลัมน์ที่ระบุ
df[['Units', 'Price']].min()
# min() แนวนอน (axis=1) - ค่าต่ำสุดต่อแถว
df.min(axis=1)
# min() พร้อม skipna
df.min(skipna=True) # default: ข้าม NaN
df.min(skipna=False) # ถ้ามี NaN ให้คืน NaN
# idxmin() - หา index ของค่าต่ำสุด
df['Units'].idxmin() # คืน index label
คู่คู่: max() หาค่าสูงสุด
df['Units'].max() # ค่าสูงสุด
df['Units'].idxmax() # index ของค่าสูงสุด
df.max() # ทุกคอลัมน์
Describe() รวม min/max
df.describe()
# count, mean, std, min, 25%, 50%, 75%, max
⚠️ ข้อควรระวัง
- ทำงานได้เฉพาะคอลัมน์ตัวเลข (numeric) - คอลัมน์ object จะ error หรือคืนค่า lexicographic min
- NaN ถูกข้ามโดย default (
skipna=True) - DataFrame ว่าง → Error (ValueError)
- String column: ใช้
df['col'].str.len().min()หาความยาวสั้นสุด