Удалить элементы из столбца кортежей в pandas кадре данных - PullRequest
0 голосов
/ 17 апреля 2020

У меня есть фрейм данных, который имеет в качестве значения строку или кортеж, содержащий несколько строк, например, один ниже:

           Country                                              Roles  \
0  Shell Record  (DSC Payroll Administrator Reporting, DSC HR S...   
1            PL  (DSC Payroll Administrator Reporting, DSC Payr...   
2            ES  (DSC HR Business Partner Reporting, DSC HR Bus...   
3  Shell Record  (DSC HR Business Partner Reporting, DSC HR Bus...   
4  Shell Record                     DSC BPM Worklist Administrator   

          Role vs Family  
0           Do not match  
1  (Match, Do not match)  
2                  Match  
3           Do not match  
4           Do not match  

Есть ли способ удалить значения внутри кортежа (для Например, удалите Match / Не соответствовать, чтобы значение в столбце было бы таким же без скобок). Я не хочу использовать «заменить» для этого (или даже не знаю, возможно ли это).

Спасибо!

1 Ответ

0 голосов
/ 19 апреля 2020

Пример кадра данных:

import pandas as pd
import re
df = pd.DataFrame({'col': ['(Match, Do not match)', 'Match', 'Do not match']})
print(df)

До:

                     col
0  (Match, Do not match)
1                  Match
2           Do not match

Это выражение регулярного выражения должно удалять все скобки из столбца.

df['col'] = df['col'].apply(lambda x: re.sub(r'[(|)]', '', x))
print(df)

После:

                   col
0  Match, Do not match
1                Match
2         Do not match
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...