繁体   English   中英

如何使用 Python 删除列中单元格的某些部分?

[英]How do I remove certain parts of cells in a column using Python?

所以我有一列数字字符串,其中某些单元格在字符串前面有单词。 它看起来有点像这样:

姓名 价值观
第一的 '9.90'
第二 '9.68'
第三 '9.45'
第四 '贷款费用:8.10'
第五 '9.98'

现在我尝试了很多不同的想法只是为了去掉“贷款费用:”,基本上我首先将它转换成一个名为 newz 的列表,然后尝试

e=[]
for i in newz:
    i.replace('Loan fee:','')
    e.append(i)

也尝试使用正则表达式:

def change(i):
    re.sub('Loan fee:','',i)

result = list(map(lambda x: change(x),newz))

到目前为止没有任何效果

如果您使用熊猫:

import pandas as pd

df = pd.DataFrame({
    'Names': ['First', 'Second', 'Third', 'Fourth', 'Fifth'],
    'Values': ['9.90', '9.68', '9.45', 'Loan fee:8.10', '9.98']
})

df['Values'] = df['Values'].str.replace('Loan fee:', '')
print(df)

输出

    Names Values
0   First   9.90
1  Second   9.68
2   Third   9.45
3  Fourth   8.10
4   Fifth   9.98

str.replace返回一个新字符串。 此外,您应该首先检查字符串是否包含 'Loan fee:' 然后替换它。

所以你应该这样做:

e=[]
for i in newz:
    if "Loan fee:" in i:
        s = i.replace('Loan fee:','')
        e.append(s)
    else:
        e.append(i)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM