2024-10-05 17:40:01 发布
网友
我的字符串总是包含一个空格,有时是两个,也可能是三个。乙二醇
Run 8890 Test Run GoLive Test Run Fall Over
我想删除最后一个空格后的所有数据。我原以为下面的方法行得通,但它抛出了一个错误:
result['t1'] = result['t1'].str.rsplit(' ')[-1]
有人能看出我做错了什么吗
第一种解决方案:使用熊猫的^{}功能,您可以尝试以下方法
df['column'].str.extract(r'(.*)(?=\s+)')
解释:使用熊猫的str.extract函数,并使用正则表达式匹配所有内容,直到单个捕获组中的最后一个空格
str.extract
第二种解决方案:具有以下^{}功能:
df['column'].str.replace(r'\s+\S+$','')
解释:使用str.replace使用正则表达式替换所有内容,从最后一个空格到非空格值,直到结尾为NULL
str.replace
输出如下:
0 Run 1 Test Run 2 Test Run Fall
使用:
result['t1']=result['t1'].str.rsplit(' ').str[:-1].apply(' '.join)
result的输出:
result
t1 0 Run 1 Test Run 2 Test Run Fall
如果要删除最后一个空格后的所有数据,而不是保留最后一个空格后的数据,可以使用:
result['t1'] = result['t1'].str.rsplit(' ').str[:-1].str.join(' ')
结果:
第一种解决方案:使用熊猫的^{} 功能,您可以尝试以下方法
解释:使用熊猫的
str.extract
函数,并使用正则表达式匹配所有内容,直到单个捕获组中的最后一个空格第二种解决方案:具有以下^{} 功能:
解释:使用
str.replace
使用正则表达式替换所有内容,从最后一个空格到非空格值,直到结尾为NULL输出如下:
使用:
result
的输出:如果要删除最后一个空格后的所有数据,而不是保留最后一个空格后的数据,可以使用:
结果:
相关问题 更多 >
编程相关推荐