Pandas는 고유 한 값을 계산합니다

Suraj Joshi 2023년1월30일
  1. Series.value_counts()를 사용하여 데이터 프레임의 고유 값 계산
  2. DataFrame.nunique()를 사용하여 DataFrame의 고유 값 계산
Pandas는 고유 한 값을 계산합니다

이 자습서에서는Series.value_counts()DataFrame.nunique()메서드를 사용하여 DataFrame의 모든 고유 값을 계산하는 방법을 설명합니다.

import pandas as pd

patients_df = pd.DataFrame(
    {
        "Name": ["Jennifer", "Travis", "Bob", "Emma", "Luna", "Anish"],
        "Date": [
            "2020-12-01",
            "2020-12-01",
            "2020-12-02",
            "2020-12-02",
            "2020-12-02",
            "2020-12-03",
        ],
        "Age": [17, 18, 17, 16, 18, 16],
    }
)

print(patients_df)

출력:

       Name        Date  Age
0  Jennifer  2020-12-01   17
1    Travis  2020-12-01   18
2       Bob  2020-12-02   17
3      Emma  2020-12-02   16
4      Luna  2020-12-02   18
5     Anish  2020-12-03   16 

DataFrame의 모든 고유 값 수를 구하는 방법을 설명하기 위해 환자의 이름, 예약 날짜 및 나이가 포함 된 DataFrame patients_df를 사용합니다.

Series.value_counts()를 사용하여 데이터 프레임의 고유 값 계산

import pandas as pd

patients_df = pd.DataFrame(
    {
        "Name": ["Jennifer", "Travis", "Bob", "Emma", "Luna", "Anish"],
        "Date": [
            "2020-12-01",
            "2020-12-01",
            "2020-12-02",
            "2020-12-02",
            "2020-12-02",
            "2020-12-03",
        ],
        "Age": [17, 18, 17, 16, 18, 16],
    }
)

print("The DataFrame is:")
print(patients_df, "\n")

print("No of appointments for each date:")
print(patients_df["Date"].value_counts())

출력:

The DataFrame is:
       Name        Date  Age
0  Jennifer  2020-12-01   17
1    Travis  2020-12-01   18
2       Bob  2020-12-02   17
3      Emma  2020-12-02   16
4      Luna  2020-12-02   18
5     Anish  2020-12-03   16 

No of appointments for each date:
2020-12-02    3
2020-12-01    2
2020-12-03    1
Name: Date, dtype: int64

DataFrame에있는 Date열의 각 고유 값의 개수를 표시합니다.

DataFrame.nunique()를 사용하여 DataFrame의 고유 값 계산

import pandas as pd

patients_df = pd.DataFrame(
    {
        "Name": ["Jennifer", "Travis", "Bob", "Emma", "Luna", "Anish"],
        "Date": [
            "2020-12-01",
            "2020-12-01",
            "2020-12-02",
            "2020-12-02",
            "2020-12-02",
            "2020-12-03",
        ],
        "Age": [17, 18, 17, 16, 18, 16],
    }
)

print(patients_df, "\n")

print(patients_df.groupby("Date").Name.nunique())

출력:

       Name        Date  Age
0  Jennifer  2020-12-01   17
1    Travis  2020-12-01   18
2       Bob  2020-12-02   17
3      Emma  2020-12-02   16
4      Luna  2020-12-02   18
5     Anish  2020-12-03   16 

Date
2020-12-01    2
2020-12-02    3
2020-12-03    1
Name: Name, dtype: int64

Date열의 값에 따라 DataFrame을 분할합니다. 즉, 동일한 Date값을 가진 행을 같은 그룹에 넣은 다음 특정 그룹에 각 이름이 나타나는 횟수를 계산하여 DataFrameDate 열 각각에 대한 고유 값의 수입니다.

작가: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn