pandas导入数据的时候,如果给列设定一个数据类型,如何在当类型不对的时候给予一个默认值?
代码如下:
df=pd.read_excel("pc1.xls",skiprows=3)
df[[6,7]]=df[[6,7]].astype(float)
我把6,7这两列设置成了float,然后假设这时候6,7列的数据是"-","NONE",'X'
这种字符内容的时候。
如何让pandas自动处理成默认值?
目前会报错说str无法转换成float
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
建议你在导入之前清洗数据,而不应该在导入时来做处理
额,如果是数字组成的str本来就可以做各种运算的吧,不需要显式转换类型吧。
参考这个:
df['IP'] = df['IP'].apply(pd.to_numeric,errors='0')
用pd.to_numeric 。有个errors属性,,百度一下有详细用法。