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编程开发之类型转换convert实例分析
Nov 13 Python
python学习之面向对象【入门初级篇】
Jan 21 Python
python 第三方库的安装及pip的使用详解
May 11 Python
Python 多线程不加锁分块读取文件的方法
Dec 11 Python
django中ORM模型常用的字段的使用方法
Mar 05 Python
Python StringIO如何在内存中读写str
Jan 07 Python
tensorflow指定GPU与动态分配GPU memory设置
Feb 03 Python
更新升级python和pip版本后不生效的问题解决
Apr 17 Python
keras实现调用自己训练的模型,并去掉全连接层
Jun 09 Python
使用tensorflow根据输入更改tensor shape
Jun 23 Python
python IP地址转整数
Nov 20 Python
selenium3.0+python之环境搭建的方法步骤
Feb 01 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禁止某ip或ip地址段访问的方法
2015/02/25 PHP
PHP使用递归生成文章树
2015/04/21 PHP
PHP中substr函数字符串截取用法分析
2016/01/07 PHP
分析PHP中单双引号的误区和双引号小隐患
2016/07/19 PHP
PHP接口继承及接口多继承原理与实现方法详解
2017/10/18 PHP
PHPCrawl爬虫库实现抓取酷狗歌单的方法示例
2017/12/21 PHP
Javascript下的keyCode键码值表
2007/04/10 Javascript
基于JQuery的asp.net树实现代码
2010/11/30 Javascript
使用Json比用string返回数据更友好,也更面向对象一些
2011/09/13 Javascript
Node.js node-schedule定时任务隔多少分钟执行一次的方法
2015/02/10 Javascript
js中javascript:void(0) 真正含义
2020/11/05 Javascript
JS使用cookie设置样式的方法
2016/06/30 Javascript
JavaScript 中的 this 简单规则
2017/09/19 Javascript
javascript按钮禁用和启用的效果实例代码
2017/10/29 Javascript
利用vue开发一个所谓的数独方法实例
2017/12/21 Javascript
[02:05]2014DOTA2西雅图邀请赛 专访啸天mik夫妻档
2014/07/08 DOTA
python打开文件并获取文件相关属性的方法
2015/04/23 Python
Python实现模拟登录及表单提交的方法
2015/07/25 Python
Python 转义字符详细介绍
2017/03/21 Python
Python 加密的实例详解
2017/10/09 Python
pd.DataFrame统计各列数值多少的实例
2019/12/05 Python
利用Python脚本批量生成SQL语句
2020/03/04 Python
Python库安装速度过慢解决方案
2020/07/14 Python
编写python代码实现简单抽奖器
2020/10/20 Python
css3闪亮进度条效果实现思路及代码
2013/04/17 HTML / CSS
详解css3 flex弹性盒自动铺满写法
2020/09/17 HTML / CSS
佐卡伊官网:中国知名珠宝品牌
2017/02/05 全球购物
三只松鼠官方旗舰店:全网坚果销售第1
2017/11/25 全球购物
美国床垫连锁店:Mattress Firm
2021/02/13 全球购物
Ado与Ado.net的相同与不同
2014/12/08 面试题
《小儿垂钓》教学反思
2014/02/23 职场文书
竞争上岗演讲稿范文
2014/05/12 职场文书
法律顾问服务方案
2014/05/15 职场文书
晚会开场白和结束语
2015/05/29 职场文书
Web前端:CSS最强总结 附详细代码
2021/03/31 HTML / CSS
教你修复 Win11应用商店加载空白问题
2021/12/06 数码科技