pandas数据集的端到端处理


Posted in Python onFebruary 18, 2019

1. 数据集基本信息

df = pd.read_csv()

df.head():前五行;

df.info():

  • rangeindex:行索引;
  • data columns:列索引;
  • dtypes:各个列的类型,
  • 主体部分是各个列值的情况,比如可判断是否存在 NaN 值;

对于非数值型的属性列

  • df[‘some_categorical_columns'].value_counts():取值分布;

df.describe(): 各个列的基本统计信息

  • count
  • mean
  • std
  • min/max
  • 25%, 50%, 75%:分位数

df.hist(bins=50, figsize=(20, 15)):统计直方图;

对 df 的每一列进行展示:

train_prices = pd.DataFrame({'price': train_df.SalePrice, 
    'log(price+1)': np.log1p(train_df.SalePrice)})
 # train_prices 共两列,一列列名为 price,一列列名为 log(price+1)
train_prices.hist()

2. 数据集拆分

def split_train_test(data, test_ratio=.3):
 shuffled_indices = np.random.permutation(len(data))
 test_size = int(len(data)*test_ratio)
 test_indices = shuffled_indices[:test_size]
 train_indices = shuffled_indices[test_size:]
 return data.iloc[train_indices], data.iloc[test_indices]

3. 数据预处理

  • 一键把 categorical 型特征(字符串类型)转化为数值型:
>> df['label'] = pd.Categorical(df['label']).codes
  • 一键把 categorical 型特征(字符串类型)转化为 one-hot 编码:
>> df = pd.get_dummies(df)
  • null 值统计与填充:
>> df.isnull().sum().sort_values(ascending=False).head()
# 填充为 mean 值
>> mean_cols = df.mean()
>> df = df.fillna(mean_cols)
>> df.isnull().sum().sum()
0

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

Python 相关文章推荐
python高并发异步服务器核心库forkcore使用方法
Nov 26 Python
从源码解析Python的Flask框架中request对象的用法
Jun 02 Python
Python中函数及默认参数的定义与调用操作实例分析
Jul 25 Python
Ubuntu安装Jupyter Notebook教程
Oct 18 Python
Python模拟随机游走图形效果示例
Feb 06 Python
Python图片转换成矩阵,矩阵数据转换成图片的实例
Jul 02 Python
python 直接赋值和copy的区别详解
Aug 07 Python
python输出带颜色字体实例方法
Sep 01 Python
python使用pip安装SciPy、SymPy、matplotlib教程
Nov 20 Python
Python pandas自定义函数的使用方法示例
Nov 20 Python
pycharm远程连接vagrant虚拟机中mariadb数据库
Jun 05 Python
解决keras GAN训练是loss不发生变化,accuracy一直为0.5的问题
Jul 02 Python
Python 数据库操作 SQLAlchemy的示例代码
Feb 18 #Python
Python列表常见操作详解(获取,增加,删除,修改,排序等)
Feb 18 #Python
Python File(文件) 方法整理
Feb 18 #Python
Python异常处理知识点总结
Feb 18 #Python
Python os.access()用法实例
Feb 18 #Python
python使用pipeline批量读写redis的方法
Feb 18 #Python
Python变量类型知识点总结
Feb 18 #Python
You might like
php 模拟POST|GET操作实现代码
2010/07/20 PHP
php中禁止单个IP与ip段访问的代码小结
2012/07/04 PHP
PHP使用缓存即时输出内容(output buffering)的方法
2015/08/03 PHP
取得一定长度的内容,处理中文
2006/12/20 Javascript
分享27个jQuery 表单插件集合推荐
2011/04/25 Javascript
各浏览器对click方法的支持差异小结
2011/07/31 Javascript
window.location.reload()方法刷新页面弹出要再次显示该网页对话框
2013/04/24 Javascript
js innerHTML 改变div内容的方法
2013/08/03 Javascript
jQuery焦点图切换简易插件制作过程全纪录
2014/08/27 Javascript
AngularJs  E2E Testing 详解
2016/09/02 Javascript
常用Javascript函数与原型功能收藏(必看篇)
2016/10/09 Javascript
nodejs密码加密中生成随机数的实例代码
2017/07/17 NodeJs
AngularJS实现的JSONP跨域访问数据传输功能详解
2017/07/20 Javascript
解决Js先触发失去焦点事件再执行点击事件的问题
2018/08/30 Javascript
Vuex 使用 v-model 配合 state的方法
2018/11/13 Javascript
Angular刷新当前页面的实现方法
2018/11/21 Javascript
node.js实现微信开发之获取用户授权
2019/03/18 Javascript
基于elementUI使用v-model实现经纬度输入的vue组件
2019/05/12 Javascript
vue-cli history模式实现tomcat部署报404的解决方式
2019/09/06 Javascript
[14:51]DOTA2 HEROS教学视频教你分分钟做大人-卓尔游侠
2014/06/13 DOTA
python实现的简单RPG游戏流程实例
2015/06/28 Python
python中文分词教程之前向最大正向匹配算法详解
2017/11/02 Python
Python3 操作符重载方法示例
2017/11/23 Python
python如何通过twisted实现数据库异步插入
2018/03/20 Python
Appium Python自动化测试之环境搭建的步骤
2019/01/23 Python
python实现一个简单的udp通信的示例代码
2019/02/01 Python
Python3.5内置模块之os模块、sys模块、shutil模块用法实例分析
2019/04/27 Python
Python常见数据类型转换操作示例
2019/05/08 Python
浅谈Django中的QueryDict元素为数组的坑
2020/03/31 Python
python中sklearn的pipeline模块实例详解
2020/05/21 Python
CSS3实现酷炫的3D旋转透视效果
2019/11/21 HTML / CSS
PyQt QMainWindow的使用示例
2021/03/24 Python
我的求职计划书
2014/01/10 职场文书
党员干部学习三严三实心得体会
2016/01/05 职场文书
Python 实现绘制子图及子图刻度的变换等问题
2021/05/31 Python
redis缓存存储Session原理机制
2021/11/20 Redis