首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >从pandas数据帧中的字符串中删除特定的url。

从pandas数据帧中的字符串中删除特定的url。
EN

Stack Overflow用户
提问于 2019-06-12 03:36:35
回答 1查看 165关注 0票数 1

我有一个数据框架:

代码语言:javascript
复制
Name  url

 A    'https://foo.com, https://www.bar.org, https://goo.com'
 B    'https://foo.com, https://www.bar.org, https://www.goo.com'
 C    'https://foo.com, https://www.bar.org, https://goo.com'

然后是关键字列表:

代码语言:javascript
复制
keyword_list = ['foo','bar']

我正在尝试删除包含关键字的urls,而保留不包含关键字的urls,到目前为止,这是唯一对我有效的方法,但是它只删除了单词的实例:

代码语言:javascript
复制
df['url'] = df['url'].str.replace('|'.join(keywordlist), ' ')

我试图将字符串中的元素转换为列表,但是当我将其与其所属的更大的数据帧组合回来时,我得到了一个索引错误,有人遇到过这种情况吗?

所需输出:

代码语言:javascript
复制
Name  url

 A    'https://goo.com'
 B    'https://www.goo.com'
 C    'https://goo.com'
EN

回答 1

Stack Overflow用户

发布于 2019-06-12 03:44:50

我非常确定您可以使用一些正则表达式来做到这一点。但是你也可以这样做:

代码语言:javascript
复制
new_df = df.set_index('Name').url.str.split(',\s+', expand=True).stack()

(new_df[~new_df.str.contains('|'.join(keyword_list))]
      .reset_index(level=1, drop=True)
      .to_frame(name='url')
      .reset_index()
)

输出:

代码语言:javascript
复制
  Name                  url
0    A      https://goo.com
1    B  https://www.goo.com
2    C      https://goo.com
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56550652

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档