วิธีค้นหาค่าต่ำสุดต่อกลุ่มใน pandas


คุณสามารถใช้วิธีการต่อไปนี้เพื่อค้นหาค่าต่ำสุดต่อกลุ่มใน DataFrame ของแพนด้า:

วิธีที่ 1: จัดกลุ่มตามอย่างน้อยหนึ่งคอลัมน์

 df. groupby (' group_column ')[' values_column ']. min ()

วิธีที่ 2: จัดกลุ่มหลายคอลัมน์ตามขั้นต่ำ

 df. groupby (' group_column ')[' values_column1 ', ' values_column2 ']. min ()

ตัวอย่างต่อไปนี้แสดงวิธีการใช้แต่ละวิธีในทางปฏิบัติกับ Pandas DataFrame ต่อไปนี้:

 import pandas as pd

#create pandas DataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'B', 'B', 'B', 'C', 'C'],
                   ' points ':[24, 23, 27, 11, 14, 8, 13],
                   ' rebounds ': [11, 8, 7, 6, 6, 5, 12]})

#display DataFrame
print (df)

  team points rebounds
0 to 24 11
1 to 23 8
2 B 27 7
3 B 11 6
4 B 14 6
5 C 8 5
6 C 13 12

ตัวอย่างที่ 1: จัดกลุ่มตามอย่างน้อยหนึ่งคอลัมน์

รหัสต่อไปนี้แสดงวิธีการค้นหาค่าต่ำสุดของคอลัมน์ คะแนน โดยจัดกลุ่มตามคอลัมน์ ทีม :

 #find minimum value of points, grouped by team
df. groupby (' team ')[' points ']. min () 

team
At 23
B 11
C 8
Name: points, dtype: int64

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

  • คะแนนขั้นต่ำสำหรับทีม A คือ 23
  • คะแนนขั้นต่ำสำหรับทีม B คือ 11
  • คะแนนขั้นต่ำสำหรับทีม C คือ 8

ตัวอย่างที่ 2: จัดกลุ่มตามอย่างน้อยหลายคอลัมน์

รหัสต่อไปนี้แสดงวิธีการค้นหาค่าต่ำสุดของคอลัมน์ คะแนน และ รีบาวด์ โดยจัดกลุ่มตามคอลัมน์ ทีม :

 #find minimum value of points and rebounds, grouped by team
df. groupby (' team ')[[' points ', ' rebounds ']]. min () 

    rebound points
team		
At 23 8
B 11 6
C 8 5

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

ทีมเอ:

  • คะแนนขั้นต่ำ: 23
  • รีบาวด์ขั้นต่ำ: 8

ทีมบี:

  • คะแนนขั้นต่ำ: 11
  • รีบาวด์ขั้นต่ำ: 6

ทีมซี:

  • คะแนนขั้นต่ำ: 8
  • การตีกลับขั้นต่ำ: 5

หมายเหตุ : สิ่งสำคัญคือต้องใช้วงเล็บคู่เมื่อระบุคอลัมน์ค่า ไม่เช่นนั้นคุณอาจได้รับข้อผิดพลาด

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

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

วิธีคำนวณผลรวมของคอลัมน์ใน Pandas
วิธีการคำนวณค่าเฉลี่ยของคอลัมน์ใน Pandas
วิธีค้นหาค่าสูงสุดของคอลัมน์ใน Pandas

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

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