List.Max หาค่าที่มากที่สุดในรายการได้อย่างรวดเร็ว รองรับค่าเริ่มต้นสำหรับรายการว่าง และสามารถจัดการค่า null ตามที่ต้องการ ฟังก์ชันนี้ใช้บ่อยสำหรับหาค่าสูงสุด คะแนนสูงสุด หรือวันที่ล่าสุด
| อาร์กิวเมนต์ | ชนิด | ค่าเริ่มต้น | คำอธิบาย |
|---|---|---|---|
| list | List | รายการที่ต้องการหาค่าสูงสุด สามารถประกอบด้วยตัวเลข ข้อความ วันที่ เวลา หรือประเภทข้อมูลอื่นที่สามารถเปรียบเทียบได้ | |
| [default]ไม่บังคับ | Any | null | ค่าที่จะคืนหากรายการว่างเปล่า (ไม่มีข้อมูล) ถ้าไม่ระบุและรายการว่าง จะได้ข้อผิดพลาด |
| [comparisonCriteria]ไม่บังคับ | Function | null | ฟังก์ชันที่ใช้แปลงหรือเลือกค่าก่อนการเปรียบเทียบ เช่น each Text.Upper(_) เพื่อเปรียบเทียบแบบไม่สนใจตัวพิมพ์ใหญ่-เล็ก |
| [includeNulls]ไม่บังคับ | Logical | true | ระบุว่าควรรวมค่า null ในการหาค่าสูงสุด ค่าเริ่มต้นเป็น true (รวม null) ถ้าตั้ง false จะข้ามค่า null ไป |
[ ] = อาร์กิวเมนต์ที่ไม่บังคับ
List.Max เป็นฟังก์ชันที่ใช้หาค่าที่มากที่สุดในรายการ โดยสามารถปรับแต่งวิธีการเปรียบเทียบและจัดการค่า null ได้
ที่เจ๋งคือ List.Max มีความยืดหยุ่นสูง – สามารถทำงานกับตัวเลข ข้อความ วันที่ และแม้แต่ประเภทข้อมูลอื่นๆ ได้ นอกจากนี้ยังสามารถใช้ comparisonCriteria เพื่อแปลงค่าก่อนการเปรียบเทียบ เช่น เมื่อต้องเปรียบเทียบข้อความแต่ไม่สนใจตัวพิมพ์ใหญ่-เล็ก
ส่วนตัวผม มักใช้ List.Max เมื่อต้องหาวันที่ล่าสุด คะแนนสูงสุด หรือค่าใหญ่ที่สุดในการวิเคราะห์ข้อมูล การผสมกับ Table.Group ทำให้หาค่าสูงสุดในแต่ละกลุ่มได้ง่ายขึ้นเยอะ 😎
หาจำนวนเงินขายที่สูงสุดจากรายการตัวเลขทั้งหมด
ใช้กับข้อมูลข้อความ เช่น หาคำว่า 'zebra' จากรายการคำศัพท์ (ตามลำดับตัวอักษร)
หาค่าที่มากที่สุดจากรายการ {1, 4, 7, 3, -2, 5} ได้ผลลัพธ์เป็น 7 เพราะ 7 เป็นค่าที่ใหญ่ที่สุด
รายการว่างเปล่า ระบุค่าเริ่มต้นเป็น -1 ฟังก์ชันจึงคืนค่า -1 แทนที่จะเกิดข้อผิดพลาด
หาคำที่มีลำดับตัวอักษรสูงสุด ได้ผลลัพธ์เป็น "zebra" เพราะ z เป็นตัวอักษรสุดท้ายในลำดับตัวอักษร
หาวันที่ล่าสุด (มากที่สุด) จากรายการ ได้ผลลัพธ์เป็น 15 พฤษภาคม 2025 เพราะเป็นวันที่ใหม่ที่สุด
แปลงข้อความเป็นตัวเลขก่อนเปรียบเทียบ จึงได้ "100" เป็นค่าสูงสุด (ถ้าไม่แปลง "5" จะเป็นค่าสูงสุดตามลำดับตัวอักษร)
List.Max หาค่าสูงสุด (มากที่สุด) ส่วน List.Min หาค่าต่ำสุด (น้อยที่สุด) ทั้งสองมีพารามิเตอร์และการใช้งานเหมือนกัน แต่ผลลัพธ์เป็นตรงกันข้าม
โดยค่าเริ่มต้น includeNulls = true ดังนั้น null จะถูกรวมในการพิจารณา หากต้องการข้ามค่า null ให้ตั้ง includeNulls = false
ไม่ได้ List.Max ต้องการข้อมูลที่สามารถเปรียบเทียบได้ อย่างไรก็ตาม สามารถใช้ comparisonCriteria เพื่อแปลงข้อมูลให้ประเภทเดียวกัน แล้วเปรียบเทียบได้
ต้องแปลงคอลัมน์ในตารางเป็นรายการก่อน ใช้ Table.Column(table, "columnName") เพื่อเอาข้อมูลออกมาเป็นรายการ แล้วใช้ List.Max
ฟังก์ชันที่ผู้เขียนโยงไว้กับ List.Max จัดกลุ่มตามหมวด · ชี้ที่ชื่อใดชื่อหนึ่ง แล้วฟังก์ชันที่ใช้คู่กันจะมีจุดทอง
List.Average คำนวณค่าเฉลี่ยของตัวเลข วันที่ เวลา หรือระยะเวลาในรายการ ฟังก์ชันนี้เป็นตัวช่วยแรกที่ผมใช้ทุกครั้งที่ต้องการวิเคราะห์ค่าเฉลี่ยจากชุดข้อมูลใดๆ
List.MaxN คืนค่าสูงสุด N ตัวแรก หรือค่าที่ผ่านเงื่อนไขจาก List โดยเรียงลำดับจากมากไปน้อย
List.Min หาค่าที่น้อยที่สุดในรายการ ใช้เมื่อต้องการหาค่าสุดต่ำ วันที่เก่าสุด หรือเปรียบเทียบแบบ custom criteria
List.Modes หารายการของค่าทั้งหมดที่ปรากฏบ่อยที่สุดในรายการ หากมีหลายค่าที่เกิดขึ้นจำนวนครั้งเท่ากัน จะคืนค่าทั้งหมด
List.Percentile คำนวณค่า percentile ของรายการตัวเลข ใช้สำหรับการวิเคราะห์ข้อมูล การหากลุ่มควอร์ไทล์ และการประเมินการกระจายตัวของข้อมูล
List.Product คำนวณผลคูณ (คูณ) ของตัวเลขทั้งหมดในรายการ โดยจะแสดงผลลัพธ์เป็นตัวเลขหรือ null หากไม่มีค่าตัวเลขในรายการ ฟังก์ชันนี้มีประโยชน์สำหรับการคำนวณค่าทางสถิติและการวิเคราะห์ข้อมูล เช่น การคำนวณผลคูณของราคา ปริมาณ หรือสัดส่วนต่างๆ
List.Sum รวมค่าตัวเลขทั้งหมดในรายการ โดยละเว้นค่า null โดยอัตโนมัติ ฟังก์ชันนี้เป็นพื้นฐานสำหรับการคำนวณสรุป การจำสรุป และการวิเคราะห์ข้อมูลในการแปลงข้อมูล
Comments
อีเมลของคุณจะไม่ถูกเผยแพร่