Consigue los valores únicos de los pandas en la columna y ordénalos
-
Obtener valores únicos en la columna Pandas DataFrame con el método
unique
-
Obtener valores únicos en la columna Pandas DataFrame con el método
drop_duplicates
- Ordenar una columna en Pandas DataFrame
Este artículo presentará cómo obtener valores únicos en la columna de Pandas DataFrame.
Por ejemplo, supongamos que tenemos un DataFrame compuesto por individuos y sus profesiones, y queremos saber el número total de profesiones. En ese caso, no podemos simplemente utilizar el total de filas para determinar el total de profesiones únicas porque muchas personas pueden tener el mismo trabajo. Para tales situaciones, podemos usar las funciones unique()
y drop_duplicates()
proporcionadas por la biblioteca de Pandas.
También es importante saber cómo ordenar el DataFrame ya que puede ayudar a visualizar y comprender los datos. Las funciones sorted()
y sort_values()
pueden ayudar a conseguirlo.
Vamos a ordenar y eliminar el siguiente DataFrame en este tutorial.
import pandas as pd
import numpy as np
df = pd.DataFrame({"A": [7, 1, 5, 4, 2, 1, 4, 4, 8], "B": [1, 2, 8, 5, 3, 4, 2, 6, 8]})
print(df)
Resultado:
A B
0 7 1
1 1 2
2 5 8
3 4 5
4 2 3
5 1 4
6 4 2
7 4 6
8 8 8
Obtener valores únicos en la columna Pandas DataFrame con el método unique
El método Pandas Series unique()
se utiliza cuando tratamos con una sola columna de un DataFrame y devuelve todos los elementos únicos de una columna. La salida final usando la función unique()
es un array.
Ejemplo:
import pandas as pd
import numpy as np
df = pd.DataFrame({"A": [7, 1, 5, 4, 2, 1, 4, 4, 8], "B": [1, 2, 8, 5, 3, 4, 2, 6, 8]})
print(df["A"].unique())
print(type(df["A"].unique()))
Resultado:
[7 1 5 4 2 8]
numpy.ndarray
Obtener valores únicos en la columna Pandas DataFrame con el método drop_duplicates
drop_duplicates()
puede aplicarse al DataFrame o a su subconjunto y conserva el tipo del objeto DataFrame. También se considera una opción más rápida cuando se trata de grandes conjuntos de datos para eliminar los valores duplicados.
Ejemplo:
import pandas as pd
import numpy as np
df = pd.DataFrame({"A": [7, 1, 5, 4, 2, 1, 4, 4, 8], "B": [1, 2, 8, 5, 3, 4, 2, 6, 8]})
print(df.drop_duplicates(subset="A"))
print(type(df.drop_duplicates(subset="A")))
Resultado:
A B
0 7 1
1 1 2
2 5 8
3 4 5
4 2 3
8 8 8
pandas.core.frame.DataFrame
Ordenar una columna en Pandas DataFrame
Podemos usar el método sorted()
para ordenar una columna, pero convierte el resultado final en un objeto de tipo lista. También podemos ordenar los valores de las columnas en orden descendente poniendo el parámetro reversed
como True
.
El siguiente ejemplo ordena la columna en orden ascendente y elimina los valores duplicados:
import pandas as pd
import numpy as np
df = pd.DataFrame({"A": [7, 1, 5, 4, 2, 1, 4, 4, 8], "B": [1, 2, 8, 5, 3, 4, 2, 6, 8]})
df_new = df.drop_duplicates(subset="A")
print(sorted(df_new["A"]))
print(type(sorted(df_new["A"])))
Resultado:
[1, 2, 4, 5, 7, 8]
list
sort_values()
es otra opción flexible para ordenar un DataFrame. Aquí podemos especificar la columna a ordenar usando el parámetro por
y si el orden es ascendente o descendente usando el parámetro ascending
. Preserva el tipo de objeto como Pandas DataFrame.
El siguiente ejemplo ordena la columna en orden descendente y elimina los valores duplicados:
import pandas as pd
import numpy as np
df = pd.DataFrame({"A": [7, 1, 5, 4, 2, 1, 4, 4, 8], "B": [1, 2, 8, 5, 3, 4, 2, 6, 8]})
df_new = df.drop_duplicates(subset="A")
print(df_new.sort_values(by="A", ascending=False))
type(df_new.sort_values(by="A"))
Resultado:
A B
8 8 8
0 7 1
2 5 8
3 4 5
4 2 3
1 1 2
pandas.core.frame.DataFrame
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedInArtículo relacionado - Pandas DataFrame
- Cómo obtener las cabeceras de columna de Pandas DataFrame como una lista
- Cómo borrar la columna de Pandas DataFrame
- Cómo convertir la columna del DataFrame a Datetime en Pandas
- Cómo convertir un float en un entero en Pandas DataFrame
- Cómo clasificar Pandas DataFrame por los valores de una columna
- Cómo obtener el agregado de Pandas grupo por y suma