Python for Data Analysis 学习心得(四) - 数据清洗、接合
一、文字处理
之前在练习爬虫时,常常爬了一堆乱七八糟的字符下来,当时就有找网络上一些清洗数据的方式,这边pandas也有提供一些,可以参考使用看看。下面为两个比较常见的指令,往往会搭配使用。
split(“,”)可以将文字串分割,冒号里的为分割依据,左边的代码就是把两个冒号中间的文字串视为一个单元。
strip()去除空白符号。
1、正则表达式
正则表达式为处理文字搜索匹配的功能,python可以直接导入re模块来使用。用法为下。


可直接用split来编译再拆解,也可以先用compile编译,再用split来拆解,后者可节省cpu的资源。
下面是几个比较常见的正则表达式指令

关于文字的处理pandas还有其他的方法,这边就不细讲了,有需要的时候再去查看就行。
二、层次化处理
一般常见的关系式数据库通常只有单一索引,对于数据量大的搜索效果通常不太好,pandas这边提供了多层索引,有点像树状图,一层一层的下来,可以提高搜索效率。

可以用loc来调取数据,以逗号“,”来间隔层数,下图就是将所有第一层的和第二层为2的数都拉出

unstack功能是把本来的第二层的拿来当列,他的相反是stack

可以自定义行列的名字

三、合并数据集
这跟表join的功能类似,也是将两张表的数据合在一起。用如下,可将df1,df2两个表相接,key就是他们接合的依据。merge默认是两张表的交集,并默认用共同有的列为依据。

如果想要将两张表的并集,或是左连接、右连接。可以在选项设定。outer代表并集、left和right代表左右连接。

DataFrame还有许多的连接方式与设定,有需要再去查看就可以。
Python for Data Analysis 学习心得(四) - 数据清洗、接合的更多相关文章
- Python for Data Analysis 学习心得(一) - numpy介绍
一.简介 Python for Data Analysis这本书的特点是将numpy和pandas这两个工具介绍的很详细,这两个工具是使用Python做数据分析非常重要的一环,numpy主要是做矩阵的 ...
- Python for Data Analysis 学习心得(三) - 文件读写和数据预处理
一.Pandas文件读写 pandas很核心的一个功能就是数据读取.导入,pandas支援大部分主流的数据储存格式,并在导入的时候可以做筛选.预处理.在读取数据时的选项有超过50个参数,可见panda ...
- Python for Data Analysis 学习心得(二) - pandas介绍
一.pandas介绍 本篇程序上篇内容,在numpy下面继续介绍pandas,本书的作者是pandas的作者之一.pandas是非常好用的数据预处理工具,pandas下面有两个数据结构,分别为Seri ...
- 《python for data analysis》第四章,numpy的基本使用
<利用python进行数据分析>第四章的程序,介绍了numpy的基本使用方法.(第三章为Ipython的基本使用) 科学计算.常用函数.数组处理.线性代数运算.随机模块…… # -*- c ...
- 数据分析---《Python for Data Analysis》学习笔记【04】
<Python for Data Analysis>一书由Wes Mckinney所著,中文译名是<利用Python进行数据分析>.这里记录一下学习过程,其中有些方法和书中不同 ...
- 数据分析---《Python for Data Analysis》学习笔记【03】
<Python for Data Analysis>一书由Wes Mckinney所著,中文译名是<利用Python进行数据分析>.这里记录一下学习过程,其中有些方法和书中不同 ...
- 数据分析---《Python for Data Analysis》学习笔记【02】
<Python for Data Analysis>一书由Wes Mckinney所著,中文译名是<利用Python进行数据分析>.这里记录一下学习过程,其中有些方法和书中不同 ...
- 数据分析---《Python for Data Analysis》学习笔记【01】
<Python for Data Analysis>一书由Wes Mckinney所著,中文译名是<利用Python进行数据分析>.这里记录一下学习过程,其中有些方法和书中不同 ...
- 学习笔记之Python for Data Analysis
Python for Data Analysis, 2nd Edition https://www.safaribooksonline.com/library/view/python-for-data ...
随机推荐
- LRJ-Example-06-13-Uva1103
pic[][]数组存储每个点的值,0或1,输入时在原图的周围加了一圈0. color[][]数组存储每个点的color值,从1开始,dfs(row, col, c) 负责对每个点着色,连通在一起的连通 ...
- linux下oracle查询中文乱码
export NLS_LANG=AMERICAN_AMERICA.UTF8
- <STL源码剖析> 6.3.6 power
计算power的算法说明 http://www.sxt.cn/u/324/blog/2112 翻译自 http://videlalvaro.github.io/2014/03/the-power-a ...
- H3C LMI协议标准
- nginx 301 将不带www域名,重定向到www域名
// nginx 官方推荐 server { listen 80; server_name example.org; return 301 http://www.example.org$request ...
- springmvc 过滤器和拦截器
1. 拦截器: interceptor 过滤器(filter)与拦截器(intercepter)相同点:1) 都可以拦截请求,过滤请求2) 都是应用了过滤器(责任链)设计模式 2.区别: 1) fi ...
- java操作数组的工具类-Arrays
static int binarySearch(type[] a, type key) 使用二分搜索法来搜索key元素在数组中的索引:若a数组不包括key,返回负数.(该方法必须已按升序排列后调用). ...
- SpringBoot+Thyemleaf开发环境正常,打包jar发到服务器就报错Template might not exist or might not be accessible
网上查看了各种解决的思路,总结如下: 1. 在controller层请求处理完了返回时,没有使用@RestController或@ResponseBody而返回了非json格式 这种情况下返回的数据t ...
- Spring Security原理篇(一) 启动原理
1.概述 spring security有参考的中文翻译文档https://springcloud.cc/spring-security-zhcn.html 在学习spring security的时候 ...
- vue的filters过滤器的使用
举个例子,过滤后台转过来的时间格式2019-08-29T02:15:08.000+0000转换为2019-08-29T02:15:08 html部分 <span v-if="item. ...