Python之数据规整化:清理、转换、合并、重塑
Python之数据规整化:清理、转换、合并、重塑
1. 合并数据集
pandas.merge可根据一个或者多个不同DataFrame中的行连接起来。
pandas.concat可以沿着一条轴将多个对象堆叠到一起。
实例方法combine_first可以将重复数据编接在一起,用一个对象中的值填充另一个对象中的缺失值。
2. 数据风格的DataFrame合并操作
2.1 数据集的合并(merge)或连接(jion)运算时通过一个或多个键将行链接起来的。如果没有指定,merge就会将重叠列的列名当做键,最好显示指定一下。
pd.merge(df1,df2,on='key')
2.2 默认情况下,merge做的是"inner"连接,结果中的键是交集。其他方式有“left”、“right”、“outer”。外连接求取的是键的并集,组合了左连接和右连接。
2.3 都对的的连接是行的笛卡尔积。
2.4 merge的suffixes选项,用于指定附加到左右两个DataFrame对象的重叠列名上的字符串。
3. 索引上的合并
DataFrame有merge和join索引合并。
4. 重塑和轴向旋转
有许多用于重新排列表格型数据的基础运算。这些函数也称作重塑(reshape)或轴向旋转(pivot)运算。
4.1 重塑层次化索引
层次化索引为DataFrame数据的重排任务提供了良好的一致性方式。主要两种功能:
stack:将数据的列“旋转”为行。
unstack:将数据的行“旋转”为列。
5. 数据转换
5.1 利用函数或映射进行数据转换
Series的map方法可以接受一个函数或含有映射关系的字典型对象。
5.2 替换值
replace可以由一个带替换值组成的列表以及一个替换值
data.replace([-999,-1000],np.nan)
5.3 重命名轴索引
轴标签也可通函数或映射进行转换,从而得到一个新对象轴还可以被就地修改,而无需新建一个数据结构。
5.4 离散化和面元划分
为了便于分析,连续数据常常被分散化或拆分成“面元”(bin)。
pandas的cut函数
5.5 检测和过滤异常值
异常值的过滤或变换运算很大程度上其实就是数组的运算。
6. 字符串操作
6.1 字符串对象方法
split以逗号分割的字符串可以拆分成数段。
字符串“::”的jion方法以冒号分隔符的形式连接起来。
6.2 正则表达式
描述一个或多个空白符的regex是\s+
创建可重用的regex对象:
regex = re.complie('\s+')
regex.split(text)
6.3 pandas中矢量化的字符串函数
实现矢量化的元素获取操作:要么使用str.get,要么使用str属性上使用索引。
Python之数据规整化:清理、转换、合并、重塑的更多相关文章
- 《python for data analysis》第七章,数据规整化
<利用Python进行数据分析>第七章的代码. # -*- coding:utf-8 -*-# <python for data analysis>第七章, 数据规整化 imp ...
- 利用Python进行数据分析——数据规整化:清理、转换、合并、重塑(七)(1)
数据分析和建模方面的大量编程工作都是用在数据准备上的:载入.清理.转换以及重塑.有时候,存放在文件或数据库中的数据并不能满足你的数据处理应用的要求.很多人都选择使用通用编程语言(如Python.Per ...
- 【学习】数据规整化:清理、转换、合并、重塑(续)【pandas】
@合并重叠数据 还有一种数据组合问题不能用简单的合并或连接运算来处理.比如说,你可能有索引全部或部分重叠的两个数据集 使用numpy的where函数,它用于表达一种矢量化的if - else a = ...
- 【学习】数据规整化:清理、转换、合并、重塑【pandas】
这一部分非常关键! 数据分析和建模方面的大量编程工作都是用在数据准备上的:加载.清理.转换以及重塑. 1.合并数据集 pandas对象中的数据可以通过 一些内置的方式进行合并: pandas.merg ...
- 利用python进行数据分析之数据规整化
数据分析和建模大部分时间都用在数据准备上,数据的准备过程包括:加载,清理,转换与重塑. 合并数据集 pandas对象中的数据可以通过一些内置方法来进行合并: pandas.merge可根据一个或多个键 ...
- 《利用python进行数据分析》读书笔记--第七章 数据规整化:清理、转换、合并、重塑(三)
http://www.cnblogs.com/batteryhp/p/5046433.html 5.示例:usda食品数据库 下面是一个具体的例子,书中最重要的就是例子. #-*- encoding: ...
- pandas(七)数据规整化:清理、转换、合并、重塑之合并数据集
pandas对象中的数据可以通过一些内置的方式进行合并: pandas.merge 可根据一个或多个键将不同的DataFrame中的行连接起来. pandas.concat可以沿着一条轴将多个对象堆叠 ...
- Python 数据分析(一) 本实验将学习 pandas 基础,数据加载、存储与文件格式,数据规整化,绘图和可视化的知识
第1节 pandas 回顾 第2节 读写文本格式的数据 第3节 使用 HTML 和 Web API 第4节 使用数据库 第5节 合并数据集 第6节 重塑和轴向旋转 第7节 数据转换 第8节 字符串操作 ...
- 利用Python进行数据分析-Pandas(第五部分-数据规整:聚合、合并和重塑)
在许多应用中,数据可能分散在许多文件或数据库中,存储的形式也不利于分析.本部分关注可以聚合.合并.重塑数据的方法. 1.层次化索引 层次化索引(hierarchical indexing)是panda ...
随机推荐
- mybatis返回list很智能很简答的,只需要配置resultmap进行类型转换,你dao方法直接写返回值list<对应的object>就行了啊
mybatis返回list很智能很简答的,只需要配置resultmap进行类型转换,你dao方法直接写返回值list<对应的object>就行了啊 dao方法 public List< ...
- git锁和钩子以及图形化界面
1.锁机制 Locking Options 严格锁(strict locking):一个时刻,只有一个人可以占用资源. 乐观锁(optimistic locking):允许多个人同时修改同一文件.乐观 ...
- FaceBook开源库Fresco
讨论学习使用 关于 Fresco Fresco 是一个强大的图片载入组件. Fresco 中设计有一个叫做 image pipeline 的模块.它负责从网络.从本地文件系统.本地资源载入图片. 为了 ...
- linux一些硬件详情查看的高级方法(网卡,内存,硬盘,cpu)
网卡-lspci内存大小和个数—— dmidecode|grep -A16 "Memory Device$"查看硬盘型号——smartctl -a /dev/sda查看硬盘大小—— ...
- [swift实战入门]手把手教你编写2048(一)
苹果设备越来越普及,拿着个手机就想捣鼓点啥,于是乎就有了这个系列,会一步一步教大家学习swift编程,学会自己做一个自己的app,github地址:https://github.com/scarlet ...
- SNAPSHOTTING
/etc/redis.conf ################################ SNAPSHOTTING ################################## Sav ...
- 中文man
1.下载中文包:cd /usr/local/src wget http://pkgs.fedoraproject.org/repo/pkgs/man-pages-zh-CN/manpageszh-1. ...
- 【Poj 1832】连环锁
连环锁 Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 1260 Accepted: 403 Description 许多 ...
- 【前端】window.resize的优化
一.概述 window.resize事件会在窗口尺寸改变的时候触发,哪怕只是改变了1像素.所以当窗口进行拖动的时候会触发很多次,很容易就卡死. 虽然部分浏览器已经进行了一点优化,但这还不够. 二.优化 ...
- Ural1099 Work Scheduling 一般图的最大匹配
Ural1099 给定无向图, 求最大匹配. 在寻找增广路的过程中,可能出现一个奇环,这时候把奇环收缩,成为一朵“花”,并在新图上继续增广. 为了记录匹配关系,需要在花中寻找路径,每一条增广路径都可以 ...