Tengo una columna en el marco de datos de pandas como la que se muestra a continuación;
LGA Alpine (S) Ararat (RC) Ballarat (C) Banyule (C) Bass Coast (S) Baw Baw (S) Bayside (C) Benalla (RC) Boroondara (C)Lo que quiero hacer es eliminar todos los caracteres especiales del final de cada fila. es decir. (S), (RC).
La salida deseada debe ser;
LGA
Alpine Ararat Ballarat Banyule Bass Coast Baw Baw Bayside Benalla BoroondaraNo estoy muy seguro de cómo obtener el resultado deseado mencionado anteriormente.
Cualquier ayuda sería apreciada.
Gracias
Tengo un enfoque diferente usando expresiones regulares. Eliminará cualquier cosa entre paréntesis:
import re import pandas as pd df = {'LGA': ['Alpine (S)', 'Ararat (RC)', 'Bass Coast (S)'] } df = pd.DataFrame(df) df['LGA'] = [re.sub("[\(\[].*?[\)\]]", "", x).strip() for x in df['LGA']] # delete anything between bracketsimport pandas as pd df = {'LGA': ['Alpine (S)', 'Ararat (RC)', 'Bass Coast (S)'] } df = pd.DataFrame(df) df[['LGA','throw away']] = df['LGA'].str.split('(',expand=True)Puedes usar Pandas str.replace
… dataf['LGA'] = dataf['LGA'].str.replace(r"\([^()]*\)", "", regex=True) import pandas as pd dataf = pd.DataFrame({ "LGA":\ """Alpine (S) Ararat (RC) Ballarat (C) Banyule (C) Bass Coast (S) Baw Baw (S) Bayside (C) Benalla (RC) Boroondara (C)""".split("\n") }) output = dataf['LGA'].str.replace(r"\([^()]*\)", "", regex=True) print(output) 0 Alpine 1 Ararat 2 Ballarat 3 Banyule 4 Bass Coast 5 Baw Baw 6 Bayside 7 Benalla 8 Boroondara Name: LGA, dtype: object