Cuando desea actualizar los datos de otro marco de datos desde una columna en un marco de datos, y hay un índice de columna de mapeo, esta pieza de python no es como sql. Puede relacionarse fácilmente para unirse y luego actualizar a través de join (quizás introduciendo el módulo sql en python Realizado).
En la actualidad, en python, la forma relativamente simple es unir la columna común a la columna actualizada y la columna actualizada a través de la función zip, y luego usar la función de actualización en el diccionario para resolverlo.
Por ejemplo:
cree df1 y df2 por separado, y ahora necesitamos actualizar la columna b en df1 a través de la columna ix compartida en df2
:
- Primero use la función zip para unir la columna ix a las dos columnas b
- Primero coloque el dict actualizado en un diccionario vacío y luego use la función de actualización para reemplazar el dict que se actualizará con el valor correspondiente del diccionario.
- Finalmente, el diccionario actualizado se convierte en una columna y se devuelve al marco de datos. El
método anterior es más fácil de entender. Hay dos métodos para el marco de datos. El primero es:
1. Reconstruir primero el índice
2. Use apply () para construir la función lambda para crear una columna separada
3. Finalmente, dele esta columna a df1
El segundo método es hacer coincidir primero df1 y df2 de acuerdo con la columna ix, y luego usar la función fillna () para llenar la columna reemplazada con el NaN en la columna reemplazada