python - 如果列包含列表中的子字符串,则使用从列表中删除的子字符串创建新列
问题描述
我正在尝试创建一个简化的名称列。我有一个品牌名称列和一个字符串列表,如下所示。如果品牌名称列包含列表中的任何字符串,则创建一个简化的品牌名称列,并删除匹配的字符串。不包含列表中任何字符串的其他品牌名称列元素将被转移到简化列
l = ['co', 'ltd', 'company']
东风:
Brand
Nike
Adidas co
Apple company
Intel
Google ltd
Walmart co
Burger King
所需的df:
Brand Simplified
Nike Nike
Adidas co Adidas
Apple company Apple
Intel Intel
Google Ltd Google
Walmart co Walmart
Burger King Burger King
提前致谢!任何帮助表示赞赏!
解决方案
如何使用它来删除子字符串和尾随空格
list_substring = ['ltd', 'company', 'co'] # 'company' will be evaluated first before 'co'
df['Simplified'] = df['Brand'].str.replace('|'.join(list_substring), '').str.lstrip()
推荐阅读
- r - 在R中可以进行hlookup吗?(或者,我如何有条件地填充列?)
- python - 有没有办法确定 PyTorch 模型是在 cpu 上还是在设备上?
- java - 为什么String类中的equals方法定义为equals(Object anObject)而不是equals(String anObject)?
- ios - 安装 iOS AWS SDK 后的 Swift 警告
- reactjs - 即使出现错误,this.props.history.push('/') 也会被执行
- spring-batch - 我们可以在需要跳过第一行和最后一行的文件上使用 Spring 批处理 Item Reader 和 Writer 吗?
- php - Extbase 模型中的 Typo3 性能
- python - Python - 如何创建可变的返回变量?
- android - Android:为什么 BluetoothLeScanner 有时无法发现任何 BLE 设备?
- laravel - 平面 Laravel 集合到树