Python es un excelente lenguaje para realizar análisis de datos, principalmente debido al fantástico ecosistema de paquetes de Python centrados en datos. Pandas es uno de esos paquetes y facilita mucho la importación y el análisis de datos.
pandas.to_numeric()
es una de las funciones generales en Pandas que se utiliza para convertir un argumento en un tipo numérico.
Sintaxis: pandas.to_numeric(arg, errores=’subir’, downcast=Ninguno)
Parámetros:
arg: lista, tupla, array 1-d o
errores de serie: {‘ignorar’, ‘elevar’, ‘coaccionar’}, ‘elevar’ predeterminado
-> Si ‘elevar’, entonces el análisis no válido generará una excepción
– > Si ‘coacciona’, el análisis no válido se establecerá como NaN
-> Si ‘ignora’, el análisis no válido devolverá la entrada a la
baja: [predeterminado Ninguno] Si no es Ninguno, y si los datos se han convertido con éxito a un tipo numérico reduce los datos resultantes al tipo numérico más pequeño posible de acuerdo con las siguientes reglas:
-> ‘entero’ o ‘con signo’: el tipo de int con signo más pequeño (mín.: np.int8)
-> ‘sin signo’: el tipo de int sin signo más pequeño (mín. .: np.uint8)
->‘float’: tipo de flotador más pequeño (mín.: np.float32)Devuelve: numérico si el análisis se realizó correctamente. Tenga en cuenta que el tipo de devolución depende de la entrada. Serie si Serie, de lo contrario ndarray.
Código #1:
Observe primero este conjunto de datos. Usaremos la columna ‘Números’ de estos datos para hacer Series y luego hacer la operación.
# importing pandas module import pandas as pd # making data frame df = pd.read_csv("https://media.geeksforgeeks.org/wp-content/uploads/nba.csv") df.head(10)
Llamar al constructor de la serie en la columna Número y luego seleccionar las primeras 10 filas.
# importing pandas module import pandas as pd # making data frame df = pd.read_csv("nba.csv") # get first ten 'numbers' ser = pd.Series(df['Number']).head(10) ser
Producción:
Usando el método pd.to_numeric(). Observe que al usar downcast=’signed’, todos los valores se convertirán en enteros.
pd.to_numeric(ser, downcast ='signed')
Producción:
Código #2: Uso de errores=’ignorar’. Ignorará todos los valores no numéricos.
# importing pandas module import pandas as pd # get first ten 'numbers' ser = pd.Series(['Geeks', 11, 22.7, 33]) pd.to_numeric(ser, errors ='ignore')
Salida:
Código #3: Usar errores=’coaccionar’. Reemplazará todos los valores no numéricos con NaN.
# importing pandas module import pandas as pd # get first ten 'numbers' ser = pd.Series(['Geeks', 11, 22.7, 33]) pd.to_numeric(ser, errors ='coerce')
Producción: