นุ่น: วิธีนับชุดค่าผสมที่ไม่ซ้ำของสองคอลัมน์


คุณสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อนับจำนวนชุดค่าผสมที่ไม่ซ้ำกันในสองคอลัมน์ใน DataFrame ของแพนด้า:

 df[[' col1 ', ' col2 ']]. value_counts (). reset_index (name=' count ')

ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ

ตัวอย่าง: การนับชุดค่าผสมที่ไม่ซ้ำกันของสองคอลัมน์ใน Pandas

สมมติว่าเรามี DataFrame แพนด้าต่อไปนี้ซึ่งแสดง ทีม และ ตำแหน่ง ของผู้เล่นบาสเกตบอลต่างๆ:

 import pandas as pd

#create dataFrame
df = pd. DataFrame ({' team ': ['Mavs', 'Mavs', 'Mavs', 'Mavs',
                            'Heat', 'Heat', 'Heat', 'Heat'],
                   ' position ': ['Guard', 'Guard', 'Guard', 'Forward',
                                'Guard', 'Forward', 'Forward', 'Guard']})
#view DataFrame
df

        team position
0 Mavs Guard
1 Mavs Guard
2 Mavs Guard
3 Mavs Forward
4 Heat Guard
5 Heat Forward
6 Heat Forward
7 Heat Guard

เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อนับจำนวน ชุดทีม และ ตำแหน่ง ที่ไม่ซ้ำกัน:

 df[[' team ', ' position ']]. value_counts (). reset_index (name=' count ')

        team position count
0 Mavs Guard 3
1 Heat Forward 2
2 Heat Guard 2
3 Mavs Forward 1

จากผลลัพธ์เราจะเห็นได้ว่า:

  • การรวม Mavs-Guard มี 3 ครั้ง
  • การรวมกันระหว่าง Heat-Forward มี 2 กรณี
  • การรวมกัน Heat-Guard มี 2 กรณี
  • มี 1 รายการของชุดค่าผสม Mavs-Forward

โปรดทราบว่าคุณยังสามารถเรียงลำดับผลลัพธ์จากน้อยไปหามากหรือจากมากไปหาน้อยได้

ตัวอย่างเช่น เราสามารถใช้โค้ดต่อไปนี้เพื่อเรียงลำดับผลลัพธ์ตามลำดับตัวเลขจาก น้อยไปหามาก :

 df[[' team ', ' position ']]. value_counts (ascending= True ). reset_index (name=' count ')

        team position count
0 Mavs Forward 1
1 Heat Forward 2
2 Heat Guard 2
3 Mavs Guard 3

ขณะนี้ผลลัพธ์จะถูกจัดเรียงตามตัวเลข จากน้อยไปหามาก

หมายเหตุ : คุณสามารถดูเอกสารฉบับเต็มของฟังก์ชัน pandas value_counts() ได้ที่นี่

แหล่งข้อมูลเพิ่มเติม

บทช่วยสอนต่อไปนี้จะอธิบายวิธีการทำงานทั่วไปอื่นๆ ในแพนด้า:

Pandas: วิธีใช้ GroupBy และการนับค่า
Pandas: วิธีใช้ GroupBy พร้อมจำนวนถังขยะ
นุ่น: วิธีสร้างตารางเดือยด้วยจำนวนค่า

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *