赞
踩
搞了一下午,终于把字符串转化成了数值
灵感来源:在Pandas中更改列的数据类型【方法总结】 - 纯净天空
顺便提一下,Google搜索就是比baidu有效率!
问题:pandas 导入 csv文件之后,有部分列是空的,列的类型为object格式,列中单元格存的是string格式
需求:把空的列(object)转化成浮点类型(float)
方法:
- # 读取文件
- data = pd.read_csv("./data/data.csv", encoding='utf-8')
-
- # 我的表格前两列信息没有用,丢掉
- data = data.ix[:, 2:]
-
- # 找到列名,转化为列表
- col = list(data.columns)
-
- # 把所有列的类型都转化为数值型,出错的地方填入NaN,再把NaN的地方补0
- data[col] = data[col].apply(pd.to_numeric, errors='coerce').fillna(0.0)
- # 至此,object的列(列中存储的是string类型)转成了float
-
- # 最后一步,把所有列都转化成float类型,done!
- data = pd.DataFrame(data, dtype='float')
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。