pandas 数据归一化以及行删除例程的方法


Posted in Python onNovember 10, 2018

如下所示:

#coding:utf8
import pandas as pd
import numpy as np
from pandas import Series,DataFrame
 
# 如果有id列,则需先删除id列再进行对应操作,最后再补上
# 统计的时候不需要用到id列,删除的时候需要考虑
# delete row
def row_del(df, num_percent, label_len = 0):
	#print list(df.count(axis=1))
	col_num = len(list(list(df.values)[1])) - label_len # -1为考虑带标签
	if col_num<0:
		print 'Error'
	#print int(col_num*num_percent)
	return df.dropna(axis=0, how='any', thresh=int(col_num*num_percent))
 
# 如果有字符串类型,则报错
# data normalization -1 to 1
# label_col: 不需考虑的类标,可以为字符串或字符串列表
# 数值类型统一到float64
def data_normalization(df, label_col = []):
	lab_len = len(label_col)
	print label_col
	if lab_len>0:
		df_temp = df.drop(label_col, axis = 1)
		df_lab = df[label_col]
		print df_lab
	else:
		df_temp = df
	max_val = list(df_temp.max(axis=0))
	min_val = list(df_temp.min(axis=0))
	mean_val = list((df_temp.max(axis=0) + df_temp.min(axis=0)) / 2)
	nan_values = df_temp.isnull().values
	row_num = len(list(df_temp.values))
	col_num = len(list(df_temp.values)[1])
	for rn in range(row_num):
		#data_values_r = list(data_values[rn])
		nan_values_r = list(nan_values[rn])
		for cn in range(col_num):
			if nan_values_r[cn] == False:
				df_temp.values[rn][cn] = 2 * (df_temp.values[rn][cn] - mean_val[cn])/(max_val[cn] - min_val[cn])
			else:
				print 'Wrong'
	for index,lab in enumerate(label_col):
		df_temp.insert(index, lab, df_lab[lab])
	return df_temp
 
 
# 创建一个带有缺失值的数据框:
df = pd.DataFrame(np.random.randn(5,3), index=list('abcde'), columns=['one','two','three'])
df.ix[1,:-1]=np.nan
df.ix[1:-1,2]=np.nan
df.ix[0,0]=int(1)
df.ix[2,2]='abc'
 
# 查看一下数据内容:
print '\ndf1'
print df
 
print row_del(df, 0.8)
 
print '-------------------------'
 
df = data_normalization(df, ['two', 'three'])
print df
 
print df.dtypes
 
print (type(df.ix[2,2]))

以上这篇pandas 数据归一化以及行删除例程的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python文档生成工具pydoc使用介绍
Jun 02 Python
Python实现读取邮箱中的邮件功能示例【含文本及附件】
Aug 05 Python
浅谈python函数之作用域(python3.5)
Oct 27 Python
完美解决安装完tensorflow后pip无法使用的问题
Jun 11 Python
Python 通过调用接口获取公交信息的实例
Dec 17 Python
Python3数字求和的实例
Feb 19 Python
python实现最小二乘法线性拟合
Jul 19 Python
使用python实现多维数据降维操作
Feb 24 Python
pyecharts在数据可视化中的应用详解
Jun 08 Python
Python基于wordcloud及jieba实现中国地图词云图
Jun 09 Python
Pandas的Apply函数具体使用
Jul 21 Python
Python pandas求方差和标准差的方法实例
Aug 04 Python
python 重命名轴索引的方法
Nov 10 #Python
Pandas:Series和DataFrame删除指定轴上数据的方法
Nov 10 #Python
Pandas DataFrame 取一行数据会得到Series的方法
Nov 10 #Python
对python创建及引用动态变量名的示例讲解
Nov 10 #Python
python 解决动态的定义变量名,并给其赋值的方法(大数据处理)
Nov 10 #Python
在Python中定义一个常量的方法
Nov 10 #Python
python 定义n个变量方法 (变量声明自动化)
Nov 10 #Python
You might like
Terran热键控制
2020/03/14 星际争霸
php xfocus防注入资料
2008/04/27 PHP
PHP运行模式的深入理解
2013/06/03 PHP
PHP中的traits实现代码复用使用实例
2015/05/13 PHP
HR vs CL BO3 第一场 2.13
2021/03/10 DOTA
JavaScript mapreduce工作原理简析
2012/11/25 Javascript
javascript表格隔行变色加鼠标移入移出及点击效果的方法
2015/04/10 Javascript
JavaScript使用Replace进行字符串替换的方法
2015/04/14 Javascript
学习Angularjs分页指令
2016/07/01 Javascript
纯JS实现轮播图
2017/02/22 Javascript
jQuery插件echarts去掉垂直网格线用法示例
2017/03/03 Javascript
vue.js组件之间传递数据的方法
2017/07/10 Javascript
详解使用nvm安装node.js
2017/07/18 Javascript
vue用addRoutes实现动态路由的示例
2017/09/15 Javascript
Django与Vue语法的冲突问题完美解决方法
2017/12/14 Javascript
bootstrap table支持高度百分比的实例代码
2018/02/28 Javascript
浅谈JS和jQuery的区别
2019/03/27 jQuery
javascript设计模式 ? 中介者模式原理与用法实例分析
2020/04/20 Javascript
解决removeEventListener 无法清除监听的问题
2020/10/30 Javascript
Vue实现图书管理小案例
2020/12/03 Vue.js
[59:00]DOTA2-DPC中国联赛 正赛 Ehome vs PSG.LGD BO3 第一场 3月7日
2021/03/11 DOTA
Python调用ctypes使用C函数printf的方法
2017/08/23 Python
python队列通信:rabbitMQ的使用(实例讲解)
2017/12/22 Python
利用django-suit模板添加自定义的菜单、页面及设置访问权限
2018/07/13 Python
django解决跨域请求的问题
2018/11/11 Python
Python shelve模块实现解析
2019/08/28 Python
Python django框架开发发布会签到系统(web开发)
2020/02/12 Python
python中如何使用虚拟环境
2020/10/14 Python
CSS3 实现的缩略图悬停效果
2020/12/09 HTML / CSS
Street One瑞士:德国现代时装公司
2019/10/09 全球购物
廉政文化进校园广播稿
2014/10/20 职场文书
2014年客服工作总结范文
2014/11/13 职场文书
2014年社区教育工作总结
2014/12/02 职场文书
先进党员事迹材料
2014/12/24 职场文书
2015年后勤工作总结范文
2015/04/08 职场文书
搞笑结婚保证书
2015/05/08 职场文书