Pandas DataFrame procesa datos: procesamiento de columnas

Tabla de contenido

1. Insertar datos en columnas

2. Agregar o modificar columnas

3. Realizar operaciones en toda la columna.

4. Utilice funciones para procesar cada valor de la columna.

5. Selecciona las columnas que necesitas

6. Modificar el nombre de la columna

7. Eliminar columnas


Primero importe la biblioteca pandas y cree un objeto de marco de datos.

import pandas as pd
data = pd.DataFrame()

1. Insertar datos en columnas

Pase los datos a los datos en forma de lista u objeto de serie. El nombre de la columna es "col_1", que puede definir usted mismo.

data["col_1"] = ["2023-01-01", "2023-02-05", "2023-03-14", "2023-12-31", "2023-05-06"]

2. Agregar o modificar columnas

Agregue una columna llamada "hoy"

from datetime import datetime as dt
data["today"] = dt.today()

Modifique la columna col_1 al formato de fecha para que se puedan realizar operaciones de fecha

data["col_1"] = pd.to_datetime(data["col_1"])

3. Realizar operaciones en toda la columna.

Reste la columna col_1 de la columna de hoy para generar la columna col_2

data["col_2"] = data["today"] - data["col_1"]

Sin embargo, el tipo de datos de diferencia procesado de esta manera es el objeto Timedelta en la biblioteca de fecha y hora. Este tipo de datos tiene poca importancia en el análisis de datos. Es necesario llamar al atributo Timedelta para extraer la diferencia de días específicos. Consulte la Sección 4 para obtener más información. operación.

4. Utilice funciones para procesar cada valor de la columna.

Si la función utilizada para el procesamiento es relativamente simple, puede usar el siguiente método: use lambda para definir la función en el método de aplicación, donde x representa el objeto que se está procesando. En el siguiente código, corresponde a cada objeto de "diferencia horaria". en la serie col_2 (Timedelta), use ".days" para acceder al atributo de días y convertir la diferencia horaria en días (el tipo de datos también se cambiará a entero en consecuencia).

data["col_2"] = data["col_2"].apply(lambda x: x.days)

Si la función que procesa datos es más compleja, también puede definir la función primero y luego procesar los datos. El primer parámetro en la función definida tiene como valor predeterminado el valor pasado en el marco de datos. Si hay varios parámetros, use args al llamar aplicar Luego agregue un objeto iterable (como una lista, tupla) para resumirlo, y los parámetros reales pasados ​​​​corresponden a las posiciones de los parámetros formales en la función uno a uno.

Cabe señalar que no se requieren paréntesis al pasar la función a aplicar.

def get_date_format(x, y):
    x = dt.strftime(x, y)
    return x

data["col_3"] = data["col_1"].apply(get_date_format, args=["%Y年%m月%d日"])

5. Selecciona las columnas que necesitas

El método es relativamente simple, pero no entraré en detalles, vayamos directamente al código:

data = data[["col_2", "col_3"]]

6. Modificar el nombre de la columna

El método es relativamente simple, pero no entraré en detalles, vayamos directamente al código:

data.rename(columns={"col_2":"天数差", "col_3":"日期"}, inplace=True)


# 也可以用以下方法,修改全部列名
columns = ["原日期", "今天", "天数差", "修改后日期"]
data.columns = columns

inplace=True indica modificación directa en el objeto

7. Eliminar columnas

El método es relativamente simple, pero no entraré en detalles, vayamos directamente al código:

data.drop(["原日期", "今天"], axis=1, inplace=True)

Los valores en la lista representan nombres de columnas. La ejecución del código anterior eliminará las dos columnas "Fecha original" y "Hoy".

Supongo que te gusta

Origin blog.csdn.net/qq_29108959/article/details/131572699
Recomendado
Clasificación