python - 熊猫系列:删除某个字符之前的所有内容,如果“所有内容”每次都更改
问题描述
我知道这样的问题已经被大量提出,但我还没有找到一个可以回答我的问题(也许我监督了某事,但我尽了最大努力;))。这就是问题所在:我有一个这样的熊猫系列:
ingredssplit
0 MAGERMILCH 65%
1 Wasser
2 Keks gemahlen 6% (WEIZENMEHL
3 Traubensaftkonzentrat
4 Palmöl)
5 Stärke
6 Maiskeimöl
7 Zucker
8 Antioxidationsmittel Ascorbinsäure¹
9 Thiamin (Vitamin B1).
dtype: object``
现在我想删除括号前第 2 行中的所有内容。但这部分每次都在变化,有时是“Keks gemahlen 6%”,有时是完全不同的。在“(”之前的第 2 行中唯一不变的是“%”。所以另一种可能性是“abc de% (”。我怎样才能删除那部分?我的研究把我带到了正则表达式运算符并继续,到这一行:
for line in ingredssplit:
print(re.sub())
但是现在我不知道如何正确填写代码括号,所以所有内容都在“(Weizenmehl”之前命名。也许还有另一种方式?另外,我如何删除“Ascorbinsäure”处的上标1?谢谢大家,有一个好我们!
解决方案
尝试str.extract
:
df.loc[[2], 'ingredssplit'] = (
df.loc[[2], 'ingredssplit'].str.extract('.*\((.*)')[0]
)
推荐阅读
- javascript - 有没有办法在打字稿中实例化通用文字类型?
- python - 在 matplotlib 图像上悬停时显示工具提示
- wordpress - the_content 之后的 Wordpress 自定义按钮链接输出
- javascript - 如何仅在带有按键事件的 JavaScript 输入框中允许 -999 到 999 数字?
- c# - 仅在 tilemap 内渲染所有精灵
- xslt - 应用模板模棱两可的匹配警告
- java - Delombok 找不到所有依赖项的符号
- javascript - 在委托给其他纯函数的联合类型上测试纯函数
- javascript - 如何通过 npm cli 将 env 变量传递给 rollup.config.js?
- html - 如何选择除特定 div 内的元素之外的所有元素