@fanerrrka

Как обрезать все строки в столбце до известного повторяющегося символа?

5fe5e198b6641691241970.png

Здравствуйте!
Подскажите, пожалуйста, как обрезать все строки в столбце до второго #.

Пример столбца:
df = {'cell_name': ['#_marS_8_all_0M#_[BC]','#_marS_8_all_0M#_[BC]','Контрольная группа [ВС]','#_marS_8_all_0M#_[BC]','#_marS_8_all_0M#_[Баннер]']}
df = pd.DataFrame(df, columns= ['cell_name'])
df.head()
  • Вопрос задан
  • 94 просмотра
Решения вопроса 2
добрый день, что-то подобное
df = {'cell_name':
                ['#_marS_8_all_0M#_[BC]',
                '#_marS_8_all_0M#_[BC]',
                'Контрольная группа [ВС]',
                '#_marS_8_all_0M#_[BC]',
                '#_marS_8_all_0M#_[Баннер]']}

print(['#'.join(d.split('#')[:2]) for d in df['cell_name']])
Ответ написан
kshnkvn
@kshnkvn Куратор тега Python
yay ✌️ t.me/kshnkvn
import re

for index, row in enumerate(df['cell_name']):
    corrected = re.match(r'^#(.+?)(?=#)', row)
    if corrected:
        df['cell_name'][index] = corrected.group()
#
# {'cell_name': ['#_marS_8_all_0M',
#   '#_marS_8_all_0M',
#   'Контрольная группа [ВС]',
#   '#_marS_8_all_0M',
#   '#_marS_8_all_0M']}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы