我有一个数据帧
ID active_seconds domain subdomain search_engine search_term
0120bc30e78ba5582617a9f3d6dfd8ca 35 city-link.com msk.city-link.com None None
0120bc30e78ba5582617a9f3d6dfd8ca 54 vk.com vk.com None None
0120bc30e78ba5582617a9f3d6dfd8ca 34 mts.ru shop.mts.ru None None
16c28c057720ab9fbbb5ee53357eadb7 4 facebook.com facebook.com None None
并且有一个列表url = ['city-link.com', 'shop.mts.ru']
。
我需要用subdomain
更改列。如果子域等于url
的元素之一,则保留它。如果subdomain != elem from url
和domain == elem from url
,我应该重写子域(向它写入域)。如果subdomain
no在列表中没有变化。
我怎么能和熊猫一起做呢?
我试着用loop做,但是花了很多时间
domains = df['domain']
subdomains = df['subdomain']
urls = ['yandex.ru', 'vk.com', 'mail.ru']
for (domain, subdomain) in zip(domains, subdomains):
if subdomain in urls:
continue
elif domain in urls and subdomain not in urls:
df['subdomain'].replace(subdomain, domain, inplace=True)
首先,您需要获取URL列表中域字段所在的记录:
接下来,您必须获取这些记录并找出子域字段不在URL中的记录:
并用原始数据帧中这些索引的域字段替换子域字段:
相关问题 更多 >
编程相关推荐