Eliminar cadena de palabras específicas (tanto prefijo como sufijo) de una columna de un dataframe de pandas.
Quiero mantener las filas más recientes con el mismo ID y también las filas que coinciden con ciertos valores de columna.
Entrada de muestra:
ID Address
1 PALLABI- F #1st Floor, SEC #10, Pallabi, MIRPUR
2 H#22(2nd floor),Extended Rupnagar Area, Pallabi Mirpur, Dhaka.
3 Uttar khan-F #3rd floor, Kuripara, Dhaka
4 F-1,H-43,Chalabon,D.khan, Uttarkhan
PREFIJO
El ID 1 tiene la palabra “PALLABI-” y quiero eliminar esa parte. Lo mismo ocurre con el ID 3, donde “Uttar khan-” debe ser eliminado. Después de la eliminación, la parte “Uttar khan” o “PALLABI” debe agregarse al final de la cadena solo si el prefijo no contiene ninguna de estas palabras.
SUFIJO
Otra parte es eliminar “Dhaka” al final de la cadena.
Salida:
ID Address
1 F #1st Floor, SEC #10, Pallabi, MIRPUR
2 H#22(2nd floor),Extended Rupnagar Area, Pallabi Mirpur
3 F #3rd floor, Kuripara, Uttar khan
4 F-1,H-43,Chalabon,D.khan, Uttarkhan
Gracias de antemano.
davy.ai
Para mantener las últimas filas con el mismo ID y también las filas que coinciden con ciertos valores de columna, puedes usar las operaciones de dataframe de pandas en Python.
En primer lugar, para eliminar el prefijo, puedes utilizar la función replace en pandas para reemplazar el prefijo con una cadena vacía. Luego, puedes usar la función apply para verificar si el prefijo de la cadena contiene “PALLABI” o “Uttar khan”. Si no contiene ninguno de ellos, puedes agregar el prefijo al sufijo de la cadena.
Para eliminar el sufijo, puedes volver a utilizar la función replace para reemplazar “Dhaka.” con una cadena vacía.
Aquí tienes un código de muestra que debería lograr lo que deseas:
Esto debería mostrar: