python实现数据预处理之填充缺失值的示例


Posted in Python onDecember 22, 2017

1、给定一个数据集noise-data-1.txt,该数据集中保护大量的缺失值(空格、不完整值等)。利用“全局常量”、“均值或者中位数”来填充缺失值。

noise-data-1.txt:

5.1 3.5 1.4 0.2
4.9 3 1.4 0.2
4.7 3.2 1.3 0.2
4.6 3.1 1.5 0.2
5 3.6 1.4 0.2
5.4 3.9 1.7 0.4
4.6 3.4 1.4 0.3
5 3.4 1.5 0.2
4.4 2.9 1.4 0.2
4.9 -3.1 1.5 0.1
5.4 3.7 1.5 0.2
4.8 3.4 1.6 0.2
4.8 3 -1.4 0.1
4.3 3 1.1 0.1
5.8 4 1.2 0.2
5.7 4.4 1.5 0.4
5.4 3.9 1.3 0.4
5.1 3.5 1.4 0.3
5.7 3.8 1.7 0.3
5.1 3.8 -1.5 0.3
5.4 3.4 1.7 0.2
5.1 3.7 1.5 0.4
4.6 3.6 1 0.2
5.1 3.3 1.7 0.5
4.8 3.4 1.9 0.2

解题思路:首先读入数据,对数据进行处理,去掉空行,利用 “均值来填充缺失值,本题利用Python语言实现,代码如下:

import numpy as np
data = []
my_list = []
con=0
noise_data = open('noise-data-1.txt') 
clean_data = open("clean_data3.txt", 'w')
for line in noise_data.readlines():
 if len(line) == 0:
 break
 if line.count('\n') == len(line):
 continue 
 dataline =line.strip().split('\t')
 my_list.append(dataline)
 con+=1
for i in range(0,con):
 for j in range(0,len(my_list[i])):
 if my_list[i][j].count('.')==0:
  miss_row=[]
  for a in range(0,len(my_list[i])):
  if float(my_list[i][a])<0:
   miss_row.append(-float(my_list[i][a])) 
  miss_row.append(float(my_list[i][a])) 
  my_average=round(np.average(miss_row),1)
  my_list[i][j]=my_average
 else:
  if float(my_list[i][j])<0:
   my_list[i][j]=-float(my_list[i][j]) 
  my_list[i][j]=float(my_list[i][j]) 
print my_list
def file_write(filename,data_list):
 file1=open(filename,'w')
 for i in data_list:
 for j in i:
  if type(j)!=str:
  j=str(j)
  file1.write(j)
  file1.write(' ')
 file1.write('\n')
 file1.close()
 return file1
filename='clean_data.txt'
file_write(filename,my_list)

运行结果如下:

python实现数据预处理之填充缺失值的示例

以上这篇python实现数据预处理之填充缺失值的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
编写Python CGI脚本的教程
Jun 29 Python
在Python的Django框架中为代码添加注释的方法
Jul 16 Python
python遍历目录的方法小结
Apr 28 Python
Python原始字符串与Unicode字符串操作符用法实例分析
Jul 22 Python
详解Python 数据库的Connection、Cursor两大对象
Jun 25 Python
pandas 转换成行列表进行读取与Nan处理的方法
Oct 30 Python
pytorch::Dataloader中的迭代器和生成器应用详解
Jan 03 Python
解决django migrate报错ORA-02000: missing ALWAYS keyword
Jul 02 Python
python属于哪种语言
Aug 16 Python
tensorflow与numpy的版本兼容性问题的解决
Jan 08 Python
Python-OpenCV教程之图像的位运算详解
Jun 21 Python
Python机器学习应用之工业蒸汽数据分析篇详解
Jan 18 Python
NetworkX之Prim算法(实例讲解)
Dec 22 #Python
Python实现控制台中的进度条功能代码
Dec 22 #Python
Python中的探索性数据分析(功能式)
Dec 22 #Python
Python反射用法实例简析
Dec 22 #Python
Python文本特征抽取与向量化算法学习
Dec 22 #Python
用Python实现KNN分类算法
Dec 22 #Python
Python数据拟合与广义线性回归算法学习
Dec 22 #Python
You might like
PHP实现生成透明背景的PNG缩略图函数分享
2014/07/08 PHP
laravel学习教程之存取器
2016/07/30 PHP
php 自定义错误日志实例详解
2016/11/12 PHP
基于ThinkPHP实现的日历功能实例详解
2017/04/15 PHP
PHP使用Redis长连接的方法详解
2018/02/12 PHP
PHP实现单文件、多个单文件、多文件上传函数的封装示例
2019/09/02 PHP
Prototype源码浅析 String部分(三)之HTML字符串处理
2012/01/15 Javascript
JavaScript高级程序设计 阅读笔记(十二) js内置对象Math
2012/08/14 Javascript
JS前端框架关于重构的失败经验分享
2013/03/17 Javascript
node.js中的buffer.Buffer.isBuffer方法使用说明
2014/12/14 Javascript
微信小程序实时聊天WebSocket
2018/07/05 Javascript
原来JS还可以这样拆箱转换详解
2019/02/01 Javascript
vue模块拖拽实现示例代码
2019/03/09 Javascript
基于Element的组件改造的树形选择器(树形下拉框)
2020/02/27 Javascript
JS XMLHttpRequest原理与使用方法深入详解
2020/04/30 Javascript
[03:17]史诗级大片应援2018DOTA2国际邀请赛 致敬每一位坚守遗迹的勇士
2018/07/20 DOTA
[40:31]Secret vs Alliacne 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
Python中文编码知识点
2019/02/18 Python
Python实现的多进程拷贝文件并显示百分比功能示例
2019/04/09 Python
Python实现随机取一个矩阵数组的某几行
2019/11/26 Python
Django解决frame拒绝问题的方法
2020/12/18 Python
美国基督教约会网站:ChristianCafe.com
2020/02/04 全球购物
2013年学期结束动员演讲稿
2014/01/07 职场文书
大学生职业生涯规划范文
2014/01/08 职场文书
开业庆典答谢词
2014/01/18 职场文书
物流管理毕业生自荐信范文
2014/03/15 职场文书
社团活动总结怎么写
2014/06/30 职场文书
2014教师党员自我评议(5篇)
2014/09/20 职场文书
住宿生擅自离校检讨书
2014/09/22 职场文书
2014年妇女工作总结
2014/12/06 职场文书
泰坦尼克号观后感
2015/06/04 职场文书
幼儿园庆元旦主持词
2015/07/06 职场文书
驾驶员管理制度范本
2015/08/06 职场文书
你为什么是穷人?可能是这5个缺点造成
2019/07/11 职场文书
html+css 实现简易导航栏功能
2021/04/07 HTML / CSS
CSS3 实现的图片悬停的切换按钮
2021/04/13 HTML / CSS