Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

Python Pandas – ดึงค่า Unique และนับ Unique จากคอลัมน์ DataFrame

ภาพรวม

ใช้ unique() ดึงค่าที่ไม่ซ้ำ และ nunique() นับจำนวนค่า unique

ตัวอย่างโค้ด


import pandas as pd

dataFrame = pd.DataFrame({
    "Car": ['BMW', 'Audi', 'BMW', 'Lexus', 'Tesla', 'Lexus', 'Mustang'],
    "Place": ['Delhi', 'Bangalore', 'Hyderabad', 'Chandigarh', 'Pune', 'Mumbai', 'Jaipur'],
    "Units": [100, 150, 50, 110, 90, 120, 80]
})

print("DataFrame ...\n", dataFrame)

# Unique values
print("\nUnique values from a column ...\n", dataFrame['Car'].unique())

# Count unique
print("\nCount unique values from a column ...\n", dataFrame['Car'].nunique())

ผลลัพธ์

DataFrame ...
       Car       Place  Units
0      BMW     Delhi    100
1    Audi  Bangalore    150
2      BMW  Hyderabad     50
3   Lexus Chandigarh    110
4   Tesla      Pune     90
5   Lexus    Mumbai    120
6  Mustang    Jaipur     80

Unique values from a column ...
['BMW' 'Audi' 'Lexus' 'Tesla' 'Mustang']

Count unique values from a column ...
5

รายละเอียดเพิ่มเติม

  • unique() คืน numpy array เรียงตามลำดับที่เจอ (preserve order)
  • nunique() นับ distinct values ไม่นับ NaN (default dropna=True)
  • value_counts() นับความถี่แต่ละค่า เรียงจากมากไปน้อย

ตัวอย่างเพิ่มเติม


# ดูความถี่
print(dataFrame['Car'].value_counts())
# BMW      2
# Lexus    2
# Audi     1
# Tesla    1
# Mustang  1

# Unique หลายคอลัมน์
print(dataFrame[['Car', 'Place']].drop_duplicates())

# Unique แบบ include NaN
print(dataFrame['Car'].nunique(dropna=False))