【发布时间】:2019-07-25 11:46:52
【问题描述】:
我想提取符号-> 之前的所有数字。目前我只有这个:
df['New'] = df['Companies'].str.findall(r'(\d+(?:\.\d+)?)').str[-1]
只提取最后一个->之前的数字
我稍微修改了一下:
df['New'] = df['Companies'].str.findall(r'(\d+(?:\.\d+)?)')
但我没有得到我想要的,而是我想要类似的东西:
Companies New New2 New3
0 -> Company A 100->Company B 60->Company C 80->... 100 60 80
1 -> Company A 100->Company B 53.1->Company C 82... 100 53.1 82
2 -> Company A 100->Company B 23-> Company D 100 23
3 -> Company 1 100->Company B 30-> Company D 100 30
请注意,New's 可以超过 3 列,具体取决于字符串中有多少 ->。此外,一些Company 名称中包含整数,我不想将其包含在新列中。
你能帮我解决这个问题吗?
【问题讨论】:
标签: python string pandas dataframe extract