Удалить строки из Dand Pandas, которые содержат IP-адрес - PullRequest
0 голосов
/ 04 декабря 2018

Я работаю с набором данных url запроса (строк), который выглядит следующим образом в pandas df:

df
  request_url                                  count
0 https://login.microsoftonline.com            24521
1 https://dt.adsafeprotected.com               11521
2 http://209.53.113.23/                        225211
3 https://googleads.g.doubleclick.net          6252
4 https://fls-na.amazon.com                    65225 
5 https://v10.vortex-win.data.microsoft.com    7852222 
6 https://ib.adnxs.com                         12
7 http://177.41.65.207/read.txt                188 

Желаемый вывод:

newdf
  request_url                                  count
0 https://login.microsoftonline.com            24521
1 https://dt.adsafeprotected.com               11521
2 https://googleads.g.doubleclick.net          6252
3 https://fls-na.amazon.com                    65225
4 https://v10.vortex-win.data.microsoft.com    7852222
5 https://ib.adnxs.com                         12

Затем я собираюсь использоватьTLD библиотека данных.Причина, по которой я хочу избавиться от них, заключается в том, что библиотека tld не знает, что делать с IP-адресом в домене.Есть ли простой способ удалить строки из кадра данных, которые содержат IP-адрес?

Ответы [ 2 ]

0 голосов
/ 04 декабря 2018

Создать функцию для проверки каждой строки и фильтрации по результату:

import re

def hasip(row):
    return re.match(r"http://\d+\.\d+\.\d+\.\d+", row["request_url"]) is None

newdf = df[df.apply(hasip, axis=1)]
0 голосов
/ 04 декабря 2018

Вы можете проверить с помощью findall с помощью регулярных выражений [0-9]+(?:\.[0-9]+){3}, astype bool преобразует весь пустой список в False

df[~df.request_url.str.findall(r'[0-9]+(?:\.[0-9]+){3}').astype(bool)]
Out[908]: 
                                 request_url
0          https://login.microsoftonline.com
1             https://dt.adsafeprotected.com
3        https://googleads.g.doubleclick.net
4                  https://fls-na.amazon.com
5  https://v10.vortex-win.data.microsoft.com
6                       https://ib.adnxs.com
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...