python – 使用str.contains将字符串的一部分替换为分隔符
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python – 使用str.contains将字符串的一部分替换为分隔符,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1693字,纯文字阅读大概需要3分钟。
内容图文
![python – 使用str.contains将字符串的一部分替换为分隔符](/upload/InfoBanner/zyjiaocheng/789/63308d6966454ddca4b1b37fa8c4a3f4.jpg)
在我转向excel宏的可怕世界之前,你是我最后的希望堡垒,
我有一个来自excel的庞大数据框架,我正在操纵,Pandas已被证明对编辑非常有用,因为excel非常挣扎.
我的最后一期如下:
现在,我有一个列,列出超过100k行的用户兴趣.问题是数据从未经过验证,所以我有潜在的有用信息,我需要操作10个输出之一.
我发现使用str.replace和str.contains是非常有用的,我想我会构建一些dicts或列表来迭代来处理逻辑.
当我在列表中使用str.contains时,它会替换整个字符串,我需要在分隔符之后保留信息以进行替换(因为用户可以有多个兴趣).
所以我可以
User, Interest
a Racing, Football, Soccer, Kickball, footy, Basketball, Hockey, Running, Jogging, Jogging & Running
b Racing, Jogging, Basketball, Computers, Reading.
c Ice Hockey
例如,有多个足球的例子需要被归入一个类别,依此类推.
假设我们只是在运动之后,那么清理非运动数据的有效方法是什么呢?
我希望我的整个问题都有道理.
输出:
User, Interest
a Race, Ball Sport, Athletics
b Race, Ball Sport, Athletics
c Athletics
解决方法:
我不知道你是想通过修改它来清理文件,还是想要在运行时有选择地过滤兴趣,但是我会这样做:
>首先,我将得到所有兴趣的排序(和唯一)列表:将所有这些列表复制到一个文件中,每行一个,并运行一些排序-u FILE>在Bash或其他地方输出.
>然后我会重新组合兴趣(Racing和Race => Race)
>使用这些组,我将在Python中使用字典创建映射:
mapping = {
'racing': 'Race',
'race': 'Race',
'football': 'Ball Sport',
...
}
>最后,在阅读文件时,我会使用一个函数来返回每行的验证兴趣:
def validate_interests(*interests):
validated = []
for interest in interests:
valid = mapping.get(interest.lower(), None)
if valid is not None:
validated.append(valid)
return validated
In [10]: validate_interests('Football', 'Racing')
Out[10]: ['Ball Sport', 'Race']
当然,您需要迭代这些行并将它们解析为一系列兴趣,但我不会过多介绍细节.
内容总结
以上是互联网集市为您收集整理的python – 使用str.contains将字符串的一部分替换为分隔符全部内容,希望文章能够帮你解决python – 使用str.contains将字符串的一部分替换为分隔符所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。