Få unikke værdier fra en kolonne i Pandas DataFrame

Få unikke værdier fra en kolonne i Pandas DataFrame

Funktionen unik() fjerner alle duplikerede værdier i en kolonne og returnerer en enkelt værdi for flere samme værdier. I denne artikel vil vi diskutere, hvordan vi kan få unikke værdier fra en kolonne ind Pandas DataFrame .

Oprettelse af en Pandas-dataramme med duplikerede elementer

Opret et eksempel på Pandas dataramme med en ordbog over lister, f.eks. kolonnenavne A, B, C, D og E med duplikerede elementer.

Python3




# Import pandas package> import> pandas as pd> # create a dictionary with five fields each> data> => {> > 'A'> : [> 'A1'> ,> 'A2'> ,> 'A3'> ,> 'A4'> ,> 'A5'> ],> > 'B'> : [> 'B1'> ,> 'B2'> ,> 'B3'> ,> 'B4'> ,> 'B4'> ],> > 'C'> : [> 'C1'> ,> 'C2'> ,> 'C3'> ,> 'C3'> ,> 'C3'> ],> > 'D'> : [> 'D1'> ,> 'D2'> ,> 'D2'> ,> 'D2'> ,> 'D2'> ],> > 'E'> : [> 'E1'> ,> 'E1'> ,> 'E1'> ,> 'E1'> ,> 'E1'> ]}> # Convert the dictionary into DataFrame> df> => pd.DataFrame(data)>

Få unikke værdier fra en kolonne i Pandas DataFrame

Nedenfor er nogle eksempler, hvorved vi kan få de unikke værdier af en kolonne i denne dataramme.

  • Få de unikke værdier af 'B'-kolonnen
  • Få de unikke værdier af 'E'-kolonnen
  • Få antallet af unikke værdier i en kolonne
  • Brug af set() til at fjerne duplikerede værdier fra en kolonne
  • Brug af pandas.concat() og Unique() metoder
  • Brug af Series.drop_duplicates()

Få de unikke værdier af 'B'-kolonnen

I dette eksempel henter og udskriver vi de unikke værdier fra 'B'-kolonnen ved hjælp af unique()> metode. De resulterende unikke værdier er ['B1', 'B2', 'B3', 'B4']> .

Python3




# Import pandas package> import> pandas as pd> # Convert the dictionary into DataFrame> df> => pd.DataFrame(data)> # Get the unique values of 'B' column> df.B.unique()>

Produktion

array(['B1', 'B2', 'B3', 'B4'], dtype=object) 

Få de unikke værdier af pandaer i 'E' kolonne

I dette eksempel opretter vi en pandas DataFrame fra en ordbog og henter derefter de unikke værdier fra 'E'-kolonnen ved hjælp af unique()> metode. De resulterende unikke værdier er ['E1']> .

Python3




# Import pandas package> import> pandas as pd> # Convert the dictionary into DataFrame> df> => pd.DataFrame(data)> # Get the unique values of 'E' column> df.E.unique()>

Produktion

array(['E1'], dtype=object) 

Få antallet af unikke værdier i en kolonne

I dette eksempel opretter vi en pandas DataFrame fra en ordbog og beregner og udskriver derefter antallet af unikke værdier i 'C'-kolonnen, eksklusive NaN-værdier. Resultatet er 3, hvilket indikerer, at der er tre unikke værdier i kolonne 'C'.

Python3




# Import pandas package> import> pandas as pd> # Convert the dictionary into DataFrame> df> => pd.DataFrame(data)> # Get number of unique values in column 'C'> df.C.nunique(dropna> => True> )>

Produktion

3 

Fjern duplikerede værdier fra en kolonne ved hjælp af set()

I dette eksempel opretter vi en pandas DataFrame fra en ordbog og bruger derefter set()> fungere at udtrække unikke værdier fra kolonne 'C', hvilket eliminerer dubletter. Det resulterende sæt, {'C1', 'C2', 'C3'}> , repræsenterer de unikke værdier i kolonne 'C'.

Python3




# Import pandas package> import> pandas as pd> # Convert the dictionary into DataFrame> df> => pd.DataFrame(data)> # Use set() to eliminate duplicate values in column 'C'> unique_values_set> => set> (df[> 'C'> ])> # Print the unique values> print> (unique_values_set)>

Produktion

{'C1', 'C2', 'C3'} 

Brug af pandas.concat() og Unique() metoder

I dette eksempel opretter vi en pandas DataFrame fra en ordbog og sammenkæder derefter unikke værdier fra alle kolonner ved hjælp af pd.concat()> . Det resulterende NumPy-array viser, når det udskrives, alle unikke værdier fra kolonne 'A' til 'E'.

Python3




# Import pandas package> import> pandas as pd> # Convert the dictionary into DataFrame> df> => pd.DataFrame(data)> # Use pd.concat() to concatenate all columns and then apply unique()> unique_values_all_columns> => pd.concat([df[col].unique()> for> col> in> df.columns])> # Print the unique values> print> (unique_values_all_columns)>

Produktion

['A1' 'A2' 'A3' 'A4' 'A5' 'B1' 'B2' 'B3' 'B4' 'C1' 'C2' 'C3' 'D1' 'D2' 'E1'] 

Brug af Series.drop_duplicates()

I dette eksempel opretter vi en pandas DataFrame fra en ordbog og fjerner dubletter fra kolonnerne 'A' og 'D' ved hjælp af drop_duplicates()> metode . Den resulterende DataFrame, når den udskrives, viser de unikke værdier i kolonne 'A' og 'D' med NaN-værdier, hvor dubletter blev fjernet fra 'D'.

Python3




# Import pandas package> import> pandas as pd> # Convert the dictionary into DataFrame> df> => pd.DataFrame(data)> # Use drop_duplicates() to remove duplicates from columns 'A' and 'D'> df[> 'A'> ]> => df[> 'A'> ].drop_duplicates()> df[> 'D'> ]> => df[> 'D'> ].drop_duplicates()> # Print the DataFrame after removing duplicates from columns 'A' and 'D'> print> (df)>

Produktion

   A B C D E   0 A1 B1 C1 D1 E1 1 A2 B2 C2 D2 E1 2 A3 B3 C3 NaN E1 3 A4 B4 C3 NaN E1 4 A5 B4 C3 NaN E1