#python-3.x #pandas #dataframe
#python-3.x #панды #фрейм данных
Вопрос:
Как мне удалить лишние символы с помощью регулярного выражения в приведенном ниже фрагменте строкового кода.
Из этого: Fulham n3.20 nDraw n3.25 nSouthampton n2.25 n
К желаемому результату: 3.20 n n3.25 n n2.25
Примечание: я пробовал использовать это регулярное выражение -> ([^ d. n]), но оно оставляет нежелательный ‘n’ в имени команды, если применимо.
([^d.\n])
Fulhamn3.20nDrawn3.25nSouthamptonn2.25n
Комментарии:
1. Зачем вам отмечать это знаком
web-scraping
?2. @baduker Это упражнение по очистке набора данных. Думал, что подойдет соскабливание паутины. Я могу удалить, если вы порекомендуете
3. @HedgeHog Спасибо за редактирование. Обучение каждый день… доберусь туда 🙂
Ответ №1:
Попробуйте это:
s = "Fulhamn3.20nDrawn3.25nSouthamptonn2.25n"
"nn".join(i for i in s.split() if re.search(r"d", i))
Вывод:
'3.20nn3.25nn2.25'
Ответ №2:
Вы также можете использовать str.replace
.
df['column_name'].str.replace(r'[a-zA-Z]','')
Если вам не нужны конечные и начальные n
значения, вы можете использовать strip('n')