在删除“.0”时出现问题,即它也在删除尾随的零。我有以下数据帧:
Product Number Materia Key
100000080 100000080.0 CUIP717610000008
我试过:
df['Material'] = df['Product Number'].astype(str)
df['Key'] = df['Target Location'] + df['Material'].str.rstrip(r'\.0')
理想情况下,我希望材质反映为对象,在连接之前没有“.0”,但这是我迄今为止所能得到的。关键是删除.0和最后一个0
rstrip
文档清楚地说明了这一点:它删除了字符串右侧列出的所有字符。您指定了两个字符,零和点。函数将继续从右侧获取所有这些字符,直到找到不在该集中的字符。相反,您需要在末尾过滤掉一个两个字符的字符串为
endswith(".0")
或s[-2:] == ".0"
编写一个筛选器。如果失败,则返回整个字符串,但在获得匹配项时返回s[:-2]您可以按“.”拆分并获取第一个字符串:
相关问题 更多 >
编程相关推荐