[英]Python: Is there a way to find and remove the first and last occurrence of a character in a string?
[英]PANDAS - remove a part of a string based on the last occurrence of a character
首先,我们可以拆分字符串并加入字符串列表,不包括最后一个条目
你可以试试这样的
df1['Item']=df1['Item'].apply(lambda x:':'.join(x.split(':')[:-1]))
预期的结果是:
0 SYD_QANTAS AIRWAYS : LTD_DOC-Turn Cost
1 SYD_QANTAS AIRWAYS LTD_DOC-Turn Cost
2 SYD_QANTAS AIRWAYS LTD_DOC-Turn Cost
从反向列表中删除,直到第一个“:”
import pandas as pd
df1 = pd.DataFrame({'Item': ["SYD_QANTAS AIRWAYS : LTD_DOC-Turn Cost :Sep",
"SYD_QANTAS AIRWAYS LTD_DOC-Turn Cost :Jul",
"SYD_QANTAS AIRWAYS LTD_DOC-Turn Cost :Aug"]})
k = 0
for i in df1:
while k < len(df1[i]):
for j in list(reversed(df1[i][k])):
if j==':':
j_index = list(reversed(df1[i][k])).index(j)+1
df1[i][k] = df1[i][k][:-j_index]
break
k +=1
print(df1)
输出:
Item
0 SYD_QANTAS AIRWAYS : LTD_DOC-Turn Cost
1 SYD_QANTAS AIRWAYS LTD_DOC-Turn Cost
2 SYD_QANTAS AIRWAYS LTD_DOC-Turn Cost
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.