¿Cómo se convierte una columna que tiene el mes en un trama de datos a los números alfabéticos (no numérico) en base a una condición específica

atharva:

Tengo una trama de datos en la que una columna contiene meses.

Quiero actualizar los valores de los meses con los números alfabéticos (uno, dos, tres, etc., y no 1,2,3 etc) ¿Hay alguna biblioteca que puedo usar para hacer esta conversión para toda la columna?

PS - La columna contiene más de 1200 filas por lo que no tiene sentido hacerlo manualmente.

vignesh:

No hay una biblioteca que va a hacer esto automáticamente para usted. Usted tiene que dar valores para cada mes, ya que ha mencionado usted tiene mes 'nombres' y no números. prueba esto:

df['arrival_date_month'] = df['arrival_date_month'].str[:3]
df.loc[df["arrival_date_month"] == "Jan", 'arrival_date_month'] = 'One'
df.loc[df["arrival_date_month"] == "Feb", 'arrival_date_month'] = 'Two'
df.loc[df["arrival_date_month"] == "Mar", 'arrival_date_month'] = 'Three'
df.loc[df["arrival_date_month"] == "Apr", 'arrival_date_month'] = 'Four'
df.loc[df["arrival_date_month"] == "May", 'arrival_date_month'] = 'Five'
df.loc[df["arrival_date_month"] == "Jun", 'arrival_date_month'] = 'Six'
df.loc[df["arrival_date_month"] == "Jul", 'arrival_date_month'] = 'Seven'
df.loc[df["arrival_date_month"] == "Aug", 'arrival_date_month'] = 'Eight'
df.loc[df["arrival_date_month"] == "Sep", 'arrival_date_month'] = 'Nine'
df.loc[df["arrival_date_month"] == "Oct", 'arrival_date_month'] = 'Ten'
df.loc[df["arrival_date_month"] == "Nov", 'arrival_date_month'] = 'Eleven'
df.loc[df["arrival_date_month"] == "Dec", 'arrival_date_month'] = 'Twelve'

Dato curioso: Aquí se puede jugar con las condiciones también si usted desea establecer el valor en función de alguna condición. Trate de reemplazar == "Jan" con alguna otra condición también.

¡Salud!

Supongo que te gusta

Origin http://10.200.1.11:23101/article/api/json?id=388114&siteId=1
Recomendado
Clasificación