pandas中数据替换和部分替换df.replace(to_replace, value)
全部替换df.replace(to_replace, value) 前面是需要替换的值,后面是替换后的值。如 df.replace('12589‘,’0‘)这样Python就会搜索整个DataFrame并将文档中所有的12589替换成了0(要注意这样的操作并没有改变文档的源数据,要改变源数据需要使用参数inplace = True,或者改为赋值的方式),df.replace('12589','0'
全部替换
df.replace(to_replace, value) 前面是需要替换的值,后面是替换后的值。如 df.replace('12589‘,’0‘)这样Python就会搜索整个DataFrame并将文档中所有的12589替换成了0(要注意这样的操作并没有改变文档的源数据,要改变源数据需要使用参数inplace = True,或者改为赋值的方式),df.replace('12589','0',inplace=True)
某一列替换:
df['colum1'].replace('12589','0',inplace=True)
同理:只想替换部分数据的时候并且要写入源数据就需要指定inplace。
替换指定的某个或指定的多个数值(用字典的形式)
df.replace('12589':'0',9999:500,inplace=True)
字典里的建作为原值,字典里的值作为替换的新值。
或者使用列表的形式进行替换:df.replace(['12589','0'],[9999,500]) ,将字符串12589替换成字符0,将整数值9999替换成500
还可以使用正则表达式的方式去处理。
df.replace(['[A-Z','max'],regex=True,inplace=True)只要包含有大写的英文字母的数据都被替换为max了,如果我们要写入源数据还需要指定inplace = True。
更多推荐
所有评论(0)