Как искать и извлекать строку в кадре данных в новый столбец, если совпадают по определенному символу? - PullRequest
0 голосов
/ 25 ноября 2018

У меня есть df, который имеет нечитаемые буквенно-цифровые значения для имен столбцов.

Я хочу извлечь все адреса электронной почты из любого столбца (ячейки), в котором есть символ @.Как мне выполнить поиск по всему фрейму данных независимо от столбца для символа @?

Input df:
    a.1   b.2        c.1      
    aa    a@a.com    12        
    bb    b@b.com    29       
    cc              
    dd    d@d.com              

пример df Я хочу после извлечения:

a.1   b.2        c.1       email
aa    a@a.com    12        a@a.com
bb    b@b.com    29        b@b.com
cc              
dd    d@d.com              d@d.com

1 Ответ

0 голосов
/ 25 ноября 2018

Использование str.contains

df['email']=df.loc[df['b.2'].str.contains('@'),'b.2']

Похоже, вам нужно

df['email']=df[df.apply(lambda x : x.str.contains('@')).eq(True)].ffill(1).iloc[:,-1]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...