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  连接字符串(join %)
Sep 06 Python
python发送arp欺骗攻击代码分析
Jan 16 Python
Python3实现连接SQLite数据库的方法
Aug 23 Python
Python实现一个简单的MySQL类
Jan 07 Python
在Python的一段程序中如何使用多次事件循环详解
Sep 07 Python
在Python 2.7即将停止支持时,我们为你带来了一份python 3.x迁移指南
Jan 30 Python
python中int与str互转方法
Jul 02 Python
python爬虫之自动登录与验证码识别
Jun 15 Python
Python如何处理大数据?3个技巧效率提升攻略(推荐)
Apr 15 Python
Pyqt QImage 与 np array 转换方法
Jun 27 Python
python数据类型强制转换实例详解
Jun 22 Python
Python爬虫爬取有道实现翻译功能
Nov 27 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的宝库目录--PEAR
2006/10/09 PHP
PHP中单引号与双引号的区别分析
2014/08/19 PHP
PHP通过内置函数memory_get_usage()获取内存使用情况
2014/11/20 PHP
php基本函数汇总
2015/07/09 PHP
php实现 master-worker 守护多进程模式的实例代码
2019/07/20 PHP
javascript 禁用IE工具栏,导航栏等等实现代码
2013/04/01 Javascript
JavaScript获取当前页面上的指定对象示例代码
2014/02/28 Javascript
JS来动态的修改url实现对url的增删查改
2014/09/05 Javascript
JavaScript动态创建form表单并提交的实现方法
2015/12/10 Javascript
jquery实现左右无缝轮播图
2020/07/31 Javascript
JavaScript中的遍历详解(多种遍历)
2017/04/07 Javascript
深入浅析Nodejs的Http模块
2017/06/20 NodeJs
vue使用vue-i18n实现国际化的实现代码
2018/04/08 Javascript
关于js的三种使用方式(行内js、内部js、外部js)的程序代码
2018/05/05 Javascript
浅谈如何使用webpack构建多页面应用
2018/05/30 Javascript
微信小程序中上传图片并进行压缩的实现代码
2018/08/28 Javascript
vue动画打包后失效问题的解决方法
2018/09/18 Javascript
JavaScript如何获取一个元素的样式信息
2019/07/29 Javascript
JS原型和原型链原理与用法实例详解
2020/02/05 Javascript
微信小程序学习之自定义滚动弹窗
2020/12/20 Javascript
[02:54]DOTA2英雄基础教程 撼地者
2014/01/14 DOTA
Python简单实现安全开关文件的两种方式
2016/09/19 Python
利用python微信库itchat实现微信自动回复功能
2017/05/18 Python
Python对数据进行插值和下采样的方法
2018/07/03 Python
python实现修改固定模式的字符串内容操作示例
2019/12/30 Python
纯CSS3实现绘制各种图形实现代码详细整理
2012/12/26 HTML / CSS
美国折扣网站:jClub
2017/08/07 全球购物
size?爱尔兰官方网站:英国伦敦的球鞋精品店
2019/03/31 全球购物
法学毕业生自我鉴定
2014/01/31 职场文书
小学新学期寄语
2014/04/02 职场文书
大专学生求职自荐信
2014/07/06 职场文书
党员教师个人对照检查材料(群众路线)
2014/09/26 职场文书
工伤事故处理协议书怎么写
2014/10/15 职场文书
2014年变电站工作总结
2014/12/19 职场文书
自书遗嘱范文
2015/08/07 职场文书
《刺客之王:C罗全景传记》:时代从来不会亏待手艺人
2019/11/28 职场文书