所以我有一个数据框,其中名为'Months'
的行包含以下形式的条目:1M
,12M
等等。所以我想摆脱M
字母。
我尝试过使用.replace()
函数,但没有成功:
df['Months'].replace('M','')
我的实施有什么问题,如何纠正?
由于
答案 0 :(得分:3)
我认为你正在寻找" .str.replace",即:
df['Months'] = df['Months'].str.replace('M','')
" .str"函数将字符串函数应用于数据库的每个条目;相反," .replace"一个替换所有对象,以防你应该这样做:
for i in range(1,13):
df['Months'] = df['Months'].replace('{}M'.format(i),str(i))
当然是笨拙而且可能更慢。
答案 1 :(得分:2)
使用df['Months'].str.replace('M', '')
。
区别:
pd.Series.replace
匹配系列中的整个条目。pd.Series.str.replace
匹配系列中条目的子字符串。