Python可以从列中的数据中删除.0,而不会丢失尾随的零

2024-09-28 03:17:03 发布

您现在位置:Python中文网/ 问答频道 /正文

在删除“.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


Tags: 数据keynumbertargetdf情况locationproduct
2条回答

rstrip文档清楚地说明了这一点:它删除了字符串右侧列出的所有字符。您指定了两个字符,零和点。函数将继续从右侧获取所有这些字符,直到找到不在该集中的字符。相反,您需要在末尾过滤掉一个两个字符的字符串

endswith(".0")s[-2:] == ".0"编写一个筛选器。如果失败,则返回整个字符串,但在获得匹配项时返回s[:-2]

您可以按“.”拆分并获取第一个字符串:

df['Material'] = df['Product Number'].astype(str)
df['Key'] = df['Target Location'] + df['Material'].str.split('.').str[0]

相关问题 更多 >

    热门问题