之前讲了数据分析numpy库,今天开始讲数据分析教程pandas库,可以说,python在数据分析领域独树一帜,离不开pandas的强有力支撑,之前教程中也说过了,numpy主要处理数值型数据,pandas不但能处理数值型,字符型等也能处理,而且相比numpy,pandas会更好用,一般情况下,在工作中如果numpy和pandas的相同功能,我也可能用pandas更多些。
下面简单截图了一个拉勾招聘需求,让大家有所了解数据分析工作的基本知识都要会哪些,工资就不必多提了,一般情况下,有2年真正的工作经验,15K算是比较保底的了,技术要求的话,有numpy、pandas、scipy、sklearn还有一些机器学习算法等,也都是该系列教程要一步步给大家讲的,当然数学好的话,会是很大的加分项,本系列教程只讲我觉得重要的,工作会用到的知识点,把方法教给大家
1、pandas数据结构
一维
二维,Series容器
导入包:习惯给numpy起别名np,pandas起别名pd
import numpy as np
import pandas as pd
简单感知下两者区别,Series为一列数据,最左侧的01234为标签,右侧为值
DataFrame为多列数据,说白了就是DataFrame由多个Series组成
2、Series创建
之前numpy教程中提到过,学习数据分析库的通用思路就是了解并创建数据结构,取值,修改,计算,这些pandas也不例外,我们依旧按照这些思路来学习
通过传入列表创建series,如果修改标签,可以创建后通过修改,也可以在创建的时候加入index参数进行修改
通过字典创建series,默认字典的键即标签
3、Series取值方式一
series具有对象的特点,类似字典,可以通过get方法、中括号方法、点语法进行取值,当然get好处就是假如键(索引、标签)不存在,不会抛异常
注意:索引是字符时候,可以用点语法,如果是数值时候,不能用点语法,如下图,会抛异常,这点同样适用于后面所讲的DataFrame数据结构
4、Series取值方式二
series不但有字典的特点,也有列表的特点,可以通过切片进行选取
5、Series计算
简单举列子,加1、利用numpy中一些数学方法计算平方等
6、Series获取索引和值
和可以获取索引和值,打印值的类型,是numpy的ndarray类型
当然区别于上面所讲的设置索引,设置索引时候我们是赋值操作 = [“zs”,“ls”,“ww”,“zl”],而获取的时候我们直接即可
7、补充一些数学运算方法(numpy库、math库、scipy库)
exp:以e为底的指数函数
square:平方
sqrt:开平方
numpy库:
math库:( 发现没有square方法,就用了pow方法)
scipy库:
举例这些想说明的问题是,python的很多科学计算库包括但不限于以上3种,内部很多封装好的数学方法用法差不多,功能重复,我们用的时候根据场景选用任意都可以,当然还有更多的对数函数,开多次方,圆周率π,这些都有对应的方法,希望大家能查阅相关文档,自己去学习,培养自学能力