Sådan filtreres der efter unikke værdier med pandas DataFrame[].unique()
I Python pandas kan du bruge funktionen unique() til at identificere unikke værdier i en kolonne i en DataFrame. Dette gør det nemt at få et hurtigt overblik over de forskellige værdier i dit datasæt.
Hvad er syntaksen for pandas DataFrame[].unique()?
Den grundlæggende syntaks for brug af pandas unique() er enkel. Det skyldes, at funktionen ikke tager nogen parametre:
DataFrame['column_name'].unique()pythonHusk, at unique() kun kan anvendes på én kolonne. Inden du kalder funktionen, skal du angive, hvilken kolonne du vil evaluere. Funktionen unique() returnerer en numpy-matrix, der indeholder alle de forskellige værdier i den rækkefølge, de vises, hvor duplikerede værdier i kolonnen er fjernet. Den sorterer dog ikke værdierne.
Hvis du har arbejdet med Python i et stykke tid, er du måske bekendt med numpy-ækvivalenten til pandas unique(). Af effektivitetshensyn foretrækkes pandas-versionen generelt.
Sådan bruges pandas DataFrame[].unique()
For at bruge unique() i en pandas DataFrame skal du først angive den kolonne, du vil kontrollere. I det følgende eksempel bruger vi en DataFrame, der indeholder oplysninger om en gruppe personers alder og bopælsby.
import pandas as pd
# Create a sample DataFrame
data = {
'Name': ['Alice', 'Bob', 'Charlie', 'David', 'Edward'],
'Age': [24, 27, 22, 32, 29],
'City': ['Newcastle', 'London', 'Newcastle', 'Cardiff', 'London']
}
df = pd.DataFrame(data)
print(df)pythonDen resulterende DataFrame ser således ud:
Name Age City
0 Alice 24 Newcastle
1 Bob 27 London
2 Charlie 22 Newcastle
3 David 32 Cardiff
4 Edward 29 LondonLad os nu sige, at vi vil oprette en liste over alle de byer, hvor personerne i DataFrame bor. Vi kan anvende unique() funktionen på den kolonne, der indeholder byerne.
# Find different cities
unique_cities = df['City'].unique()
print(unique_cities)pythonOutputtet er en numpy-matrix, der viser hver by én gang og viser, at personerne i DataFrame kommer fra i alt tre byer: Newcastle, London og Cardiff.
['Newcastle' 'London' 'Cardiff']