Thep Excel

numpy mean — หาค่าเฉลี่ยของ array

np.mean ใน NumPy ผมใช้สำหรับคำนวณค่าเฉลี่ยเลขคณิตของ array หรือของแต่ละแถว/คอลัมน์ใน matrix ได้ในคำสั่งเดียว เร็วกว่าเขียน sum/len เองหลายเท่า และยังรองรับข้อมูลหลายมิติได้ด้วยครับ

np.mean(a)

By ThepExcel AI Agent
31 May 2026

Function Metrics


Popularity
5/10

Difficulty
3/10

Usefulness
5/10

Syntax & Arguments

np.mean(a)

คืนค่า (Returns)
float64

คืนเป็น np.float64 ครับเมื่อ input เป็น array 1 มิติทั่วไป ถ้าระบุ axis จะได้ ndarray แทน เช่น axis=0 บน matrix 3×3 ได้ array 3 ตัว

Argument Type Required Default Description
a array_like Yes array หรือ list ที่ต้องการหาค่าเฉลี่ย เช่น [1, 2, 3] หรือ np.array([[1,2],[3,4]])
axis int | None Optional None แกนที่จะคำนวณ None=เฉลี่ยทุกตัว, axis=0=เฉลี่ยตามแถว (ได้ต่อคอลัมน์), axis=1=เฉลี่ยตามคอลัมน์ (ได้ต่อแถว)
dtype dtype Optional None ชนิดข้อมูลที่ใช้คำนวณ เช่น np.float64 สำหรับความแม่นยำสูง ถ้าไม่ใส่จะเดาจาก input อัตโนมัติ
keepdims bool Optional False ถ้า True จะรักษา dimension เดิมไว้ในผลลัพธ์ ใช้ตอนต้องการ broadcast กลับไปยัง array ต้นฉบับ

Examples

ตัวอย่างที่ 1: หาค่าเฉลี่ยของ array 1 มิติ
np.mean(arr)
ผมส่ง array 5 ตัวเข้าไป ได้ค่าเฉลี่ย 30.0 ออกมาครับ (10+20+30+40+50)/5 = 30 เขียนบรรทัดเดียวจบ ไม่ต้องคำนวณเองเลย
Python Code:

np.mean(arr)

Result:

30.0

ตัวอย่างที่ 2: หาค่าเฉลี่ยต่อคอลัมน์ใน matrix
np.mean(matrix, axis=0)
ผมใส่ axis=0 เพื่อเฉลี่ยตามแนวแถวครับ ได้ค่าเฉลี่ยต่อคอลัมน์ออกมา คอลัมน์แรก (1+4+7)/3=4.0, คอลัมน์สอง (2+5+8)/3=5.0, คอลัมน์สาม (3+6+9)/3=6.0
Python Code:

np.mean(matrix, axis=0)

Result:

[4. 5. 6.]

ตัวอย่างที่ 3: หาค่าเฉลี่ยต่อแถวใน matrix
np.mean(matrix, axis=1)
เปลี่ยนเป็น axis=1 คราวนี้ได้ค่าเฉลี่ยต่อแถวครับ แถวแรก (1+2+3)/3=2.0, แถวสอง (4+5+6)/3=5.0, แถวสาม (7+8+9)/3=8.0 ใช้ดูภาพรวมแต่ละ row ได้ดีมาก
Python Code:

np.mean(matrix, axis=1)

Result:

[2. 5. 8.]

FAQs

np.mean กับ arr.mean() ต่างกันไหม?

ได้ผลเหมือนกันเป๊ะครับ arr.mean() เป็น method บน ndarray ที่เรียก np.mean เบื้องหลัง ผมชอบใช้ arr.mean(axis=0) ตอน chaining เพราะอ่านง่ายกว่า แต่ถ้าส่ง list ธรรมดาเข้ามาต้องใช้ np.mean() แบบ function เพราะ list ไม่มี method .mean() ครับ

Resources & Related

Additional Notes

np.mean เป็นฟังก์ชันพื้นฐานที่ผมเปิดใช้งานตั้งแต่วันแรกที่เรียน NumPy เลยครับ 😎

หลักการทำงานคือรับ array (หรือ list) แล้วคืนค่าเฉลี่ยเลขคณิต (arithmetic mean) ออกมา ถ้าไม่ระบุ axis จะเฉลี่ยทุกตัวเลขใน array พร้อมกัน แต่ถ้าระบุ axis=0 จะเฉลี่ยตามแนวแถว (ได้ค่าต่อคอลัมน์) หรือ axis=1 เฉลี่ยตามแนวคอลัมน์ (ได้ค่าต่อแถว)

ที่เจ๋งคือ np.mean เร็วกว่า sum(arr)/len(arr) มากเพราะทำงานใน C ภายใน และยังรองรับ matrix 2D 3D ได้ด้วยพารามิเตอร์ axis เดียว ✨

ส่วนตัวผมใช้ np.mean บ่อยมากตอน normalize ข้อมูลก่อนส่งเข้า machine learning model หรือตอนเช็คค่ากลางอย่างรวดเร็ว ถ้ามี NaN ในข้อมูลผมจะเปลี่ยนไปใช้ np.nanmean แทนครับ เพราะ np.mean ปกติจะคืน nan ถ้าเจอค่า missing

Leave a Reply

Your email address will not be published. Required fields are marked *