แพนด้าคิวคัท

Phaenda Khiw Khath



“Python” มีไลบรารีจำนวนมาก และเมื่อเราต้องการวิเคราะห์หรือจัดการข้อมูล เราใช้ไลบรารีของ “Python” เหล่านี้ และ “pandas” ก็เป็นไลบรารีของมันด้วย ห้องสมุด 'หมีแพนด้า' ใช้ในสาขาวิทยาศาสตร์ข้อมูล และยังใช้ในกิจกรรมการเรียนรู้ของเครื่องด้วย DataFrame “แพนด้า” ช่วยเราในการบันทึกข้อมูล ใน “pandas” เมื่อเราต้องการ data binning เราจะใช้วิธี “qcut()” วิธีการ “qcut()” ใช้สำหรับแปลงคุณสมบัติต่อเนื่องเป็นคุณสมบัติตามหมวดหมู่ เราสามารถเพิ่มพารามิเตอร์ประเภทต่างๆ ได้ในวิธี “qcut()” เพื่อให้ได้ผลลัพธ์ประเภทต่างๆ บทช่วยสอนนี้เป็นข้อมูลเกี่ยวกับวิธี “qcut()” และเราจะอธิบายรายละเอียดทั้งหมดของวิธีการ “qcut()” ที่นี่ เราจะอธิบายให้คุณทราบถึงวิธีที่เราทำ data binning ด้วยความช่วยเหลือของฟังก์ชัน “qcut()” ใน “pandas” ในบทช่วยสอนนี้

ตัวอย่าง # 01

เราจะใช้เมธอด “qcut()” ในโค้ดเหล่านี้ และเราจะทำโค้ดเหล่านี้ในแอป “Spyder” เมื่อเราต้องทำงานกับ “แพนด้า” เราสามารถเข้าถึงฟังก์ชั่นของมันได้ก็ต่อเมื่อเรานำเข้าไลบรารี “แพนด้า” ลงในรหัสของเราเท่านั้น ขั้นแรก เราใส่ 'import' แล้วเขียน 'pandas as pd' ตอนนี้ เราต้องใช้วิธี “qcut()” ดังนั้นสำหรับสิ่งนี้ เรากำลังสร้าง DataFrame ที่นี่ เราสร้าง 'Random_df' ที่มี 'R_ID, R_name และ R_age' เป็นคอลัมน์และใน 'R_ID' เราวาง 'R_17, R_21, R_24, R_29, R_31, R_34, R_44, R_46, R_50, R_51, R_55, R_61, R_73 และ R_81” จากนั้นเราเพิ่ม 'Theodore, Teddy, Noah, Leo, Ivy, Henry, Freddie, Evelyn, Ava, Willow, Theo, Oscar, Jacob และ Harper' ในคอลัมน์ 'R_name' หลังจากนี้ เราจะแทรก “21, 33, 12, 43, 22, 7, 21, 51, 72, 19, 10, 9, 37, และ 40” ลงในคอลัมน์ “R_age” ตอนนี้ เราใช้ “print()” ซึ่งมี “Random_df” และจะช่วยในการแสดง DataFrame “Random_df” เราเพิ่งสร้าง DataFrame และยังไม่ได้ใช้วิธี “qcut()”








ไอคอน 'เรียกใช้' ช่วยเราในการรันโค้ด เมื่อเรากดไอคอน 'เรียกใช้' นี้ ผลลัพธ์ของรหัสนี้จะแสดงบนเทอร์มินัลของแอป 'Spyder' “Random_df” DataFarme จะแสดงเป็นผลลัพธ์ของรหัสที่เราได้เขียนไว้ในตัวอย่างนี้ ตอนนี้ เราจะใช้วิธี “qcut()” และจะแสดงผลลัพธ์ด้วย




เรากำลังผูกข้อมูลไว้ที่นี่ เรากำลังเชื่อมโยงคอลัมน์ 'R_age' และวางเมธอด 'pd.qcut()' ซึ่งเป็นวิธีการของ 'แพนด้า' ที่ช่วยในการเก็บข้อมูล ในวิธีนี้ เราใส่ชื่อของ DataFrame และชื่อคอลัมน์ที่เราต้องใช้วิธีนี้ “qcut()” นอกจากนี้เรายังตั้งค่าของ 'q' เป็น '5' และใช้สำหรับตัดข้อมูลของคอลัมน์ 'R_age' ออกเป็นห้าควอไทล์ที่เท่ากัน เราเพิ่มเมธอด “qcut()” ใน “print()” ดังนั้นมันจะแสดงข้อมูล binning บนเทอร์มินัลด้วย




ที่นี่ ข้อมูลหลังจากแสดง binning และตัด “R_age” ออกเป็นห้าควอนไทล์ นอกจากนี้ยังแสดงหมวดหมู่ที่ข้อมูลคอลัมน์ 'R_age' ถูกรวมไว้ด้วย ชุดหมวดหมู่แสดงถึงถังขยะ 'R_age'






เรายังปรับฉลากสำหรับถังขยะเหล่านี้ได้อีกด้วย เราเพิ่มป้ายกำกับถังขยะเพื่อให้ง่ายต่อการตีความ เราเพิ่มคอลัมน์ 'R_age_qcut' ลงใน 'Random_df' ซึ่งเราเพิ่มป้ายกำกับของถังขยะเหล่านี้ เราใช้วิธีการ “pd.qcut()” อีกครั้งในการติดป้ายกำกับ เราเพิ่มป้ายกำกับที่ “เล็กน้อย ไม่น้อย ปานกลาง สูง และสูงสุด” เข้าไป จากนั้นเราใส่ 'Random_df' อีกครั้งใน 'print()'


ถังขยะทั้งหมดมีป้ายกำกับและนำเสนอในผลลัพธ์นี้ คอลัมน์ “R_age_qcut” จะแสดงใน DataFrame ซึ่งจะแสดงถังขยะที่มีป้ายกำกับ



ตัวอย่าง # 02

สำหรับการสร้าง DataFrame ขั้นแรกเราจะเพิ่ม 'เกรด' ซึ่งก็คือ '3, 6, 8, 7, 2, 5, 1, 9, 4, 7 และ 8' จากนั้น เราเพิ่มชื่อนักเรียนใน 'นักเรียน' ซึ่งได้แก่ 'Peter, Bromley, James, David, Allies, John, James, Samuel, William, Howard และ Alexander' จากนั้น เราสร้าง 'Grades_df' โดยที่เราได้เพิ่มเมธอด 'pd.DataFrame()' และในวิธีนี้ เราใส่ 'Std_name' ซึ่งจะปรากฏเป็นชื่อคอลัมน์ และกำหนดค่าของ 'นักเรียน' ให้กับสิ่งนี้ จากนั้นเราตั้งค่า “Students_grades” เป็นชื่อคอลัมน์ของ DataFrame และกำหนด “เกรด” ที่นี่ ซึ่งเราได้สร้างไว้ข้างต้น หลังจากนี้ เรามี “print()” ซึ่งเราเพิ่ม “Grades_df” สำหรับการพิมพ์


DataFrame ที่มีสองคอลัมน์จะแสดงในผลลัพธ์ของรหัสนี้ ตอนนี้ เราจะใช้เมธอด “qcut()” กับคอลัมน์ “Students_grades” เพื่อรวมข้อมูลของค่าของคอลัมน์นี้


เราเพิ่มคอลัมน์ 'เกรด' ใหม่ที่นี่ซึ่งเราใช้ 'pd.qcut()' กับคอลัมน์ 'Students_grades' และเรายังใช้ '4' สำหรับค่าของ 'q' อีกด้วย ดังนั้นมันจะตัด ข้อมูลออกเป็นสี่ควอไทล์เท่ากัน หลังจากนี้ เราระบุควอนไทล์เหล่านี้ที่นี่โดยใส่ค่าใน “q” ซึ่งก็คือ “0, .4, .8 และ 1” จากนั้นเราก็แสดงสิ่งนี้ด้วย ตอนนี้ เรากำลังติดป้ายกำกับข้อมูลที่รวมไว้เหล่านี้ และป้ายกำกับที่เราเพิ่มที่นี่คือ 'D, C, A และ B' และยังจัดเก็บไว้ในคอลัมน์ 'เกรด' ด้วย


ที่นี่ ข้อมูลหลัง binning จะแสดงที่นี่ในคอลัมน์ 'เกรด' และจะตัดข้อมูลของคอลัมน์ 'Students_grades' ออกเป็นสี่ควอไทล์ที่เท่ากัน


DataFrame ที่เราได้รับหลังจากใช้วิธี “qcut()” และการระบุควอนไทล์จะแสดงในผลลัพธ์นี้


ตอนนี้ หลังจากเพิ่มป้ายกำกับลงในถังขยะแล้ว ผลลัพธ์นี้จะแสดงในคอลัมน์ 'เกรด' ด้วย และคุณจะเห็นว่าป้ายกำกับกำหนดป้ายกำกับตามค่าถังขยะ

ตัวอย่าง #03

นอกจากนี้เรายังสามารถใช้วิธีการ “qcut()” กับข้อมูลของไฟล์ CSV สำหรับสิ่งนี้ ก่อนอื่นเราอ่านข้อมูลของไฟล์ CSV โดยใช้เมธอด “read_csv()” เรากำลังอ่านข้อมูลของไฟล์ 'office2.csv' จากนั้นข้อมูลของไฟล์นี้จะอยู่ใน 'Office_df' วิธีนี้จะแปลงข้อมูลของไฟล์ 'office2' เป็น DataFrame และบันทึกไว้ใน 'Office_df' จากนั้น เรายังแสดงข้อมูลนี้โดยใส่ 'Office_df' ลงใน 'print()' หลังจากนี้ เราเพิ่มคอลัมน์ใหม่ชื่อ 'Units_qcut' ซึ่งเราใช้ฟังก์ชัน 'pd.qcut()' กับคอลัมน์ 'Units'

นอกจากนี้ เราตั้งค่าตัวแปร 'q' เป็น '5' ซึ่งจะแบ่งข้อมูลออกเป็นห้าควอไทล์ที่เท่ากัน ข้อมูลหลังจากตัดออกเป็น 5 quantiles ที่เท่ากันจะถูกเก็บไว้ในคอลัมน์ 'Units_qcut' และคอลัมน์นี้จะถูกเพิ่มลงใน 'Office_df' และ 'Office_df' จะแสดงที่นี่อีกครั้งโดยใช้ 'print()' ขณะนี้ เรากำลังติดป้ายกำกับข้อมูลที่ผูกมัดเหล่านี้ โดยเพิ่มป้ายกำกับในวิธี “qcut()” ซึ่งได้แก่  “หน่วยที่ 1 หน่วยที่ 2 หน่วยที่ 3 หน่วยที่ 4 และหน่วยที่ 5” และจัดเก็บไว้ในคอลัมน์ 'ป้ายกำกับ' ด้วย . นอกจากนี้เรายังแสดง DataFrame นี้ซึ่งมีการเพิ่มคอลัมน์ 'ป้ายกำกับ'


ข้อมูลที่เราได้รับหลังจากอ่านไฟล์ “office2.csv” จะแสดงที่นี่ในรูปแบบของ DataFrame จากนั้นจะเพิ่มคอลัมน์ 'Units_qcut' ซึ่งจะแสดงค่าที่รวมไว้ในคอลัมน์ 'หน่วย' หลังจากนี้ คอลัมน์ 'ป้ายกำกับ' จะถูกเพิ่มเข้าไปด้วย ซึ่งจะกำหนดป้ายกำกับให้กับค่าที่รวมไว้เหล่านี้ ทั้งหมดนี้ทำได้โดยใช้เมธอด “qcut()” ใน “pandas”

บทสรุป

เราได้อธิบายรายละเอียดวิธีการ “qcut()” ในบทช่วยสอนนี้ ซึ่งช่วยในการรวมข้อมูลใน “แพนด้า” เราได้พูดคุยกันแล้วว่าข้อมูลจะถูกจัดเก็บตามค่าควอนไทล์ 'q' ซึ่งเราได้เพิ่มในวิธี 'qcut()' และเราได้ปรับป้ายกำกับเป็นข้อมูลที่รวมไว้ด้วย เราได้สำรวจวิธีการ “qcut()” และได้ใช้วิธีนี้กับคอลัมน์ของ DataFrame และเรายังได้ใช้วิธี “qcut()” นี้กับข้อมูลของไฟล์ CSV หลังจากอ่านไฟล์ CSV เราได้นำเสนอผลลัพธ์ของรหัสทั้งหมดในบทช่วยสอนนี้เพื่ออธิบายและแสดงผลของวิธีการ “qcut()” อย่างชัดเจน