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