数据处理及可视化思维导图
2021-06-17 22:23:03 22 举报
AI智能生成
内农大刘敏的作业
作者其他创作
大纲/内容
Python进阶
类
声明
class关键字声明
使用类
获取属性值
修改属性值
修改类属性值
添加实例的属性
添加类的属性成员
方法
实例方法
调用方法
__init__方法
_init__是python的构造器用法,同时也是类中特殊用法
类方法
定义
类方法第1个参数是“cls”,表示类本身。
类方法时使用“@classmethod”装饰器。
类方法时使用“@classmethod”装饰器。
调用
类方法可以通过类名或类实例名来调用
静态方法
静态方法既不需要实例参数,也不需要类参数,即不需要cls也不需要self参数。
定义静态方法时使用“@staticmethod”装饰器。
定义静态方法时使用“@staticmethod”装饰器。
属性
实例属性和类属性
实例属性
一般是在__init()__中以self为前缀定义的
类属性
是指在类中所有方法之外定义的成员
私有属性和共有属性
私有属性
在声明类的过程中定义属性时,带有“__”前缀的属性
共有属性
除私有属性之外的其他属性称为公有属性
继承
隐式继承
指子类从他的父类中完全继承了所有的成员,用户无需任
何多余操作,就可以使得子类具备父类的功能
何多余操作,就可以使得子类具备父类的功能
子类可继承父类的全部公有成员,但是不能继承其私有成员
如果在子类中使用__init__来构造实例属性时,一定要用super函数去初始化父类,否则子类
的实例属性中只会有自己使用__init__定义的属性,不会有父类的实例属性
的实例属性中只会有自己使用__init__定义的属性,不会有父类的实例属性
显式覆盖
有些时候,子类的方法名称跟父类名称相同,但是其实现的功能不同,这种情况称
为显式覆盖,即覆盖父类的同名方法。(同名情况)
为显式覆盖,即覆盖父类的同名方法。(同名情况)
super继承
super继承:即在子类中运用super函数可以达到调用与子类成员名称相同的
父类成员的目的
父类成员的目的
多态
同名方法在不同实例和子类中的定制
多重继承
子类不仅可以从一个父类继承,也可从多个父类继承,即多重继承。该过程类似
于儿子的特性可以从父亲那里继承,也可以从母亲那里继承,还可以从爷爷奶奶
那里得到继承
于儿子的特性可以从父亲那里继承,也可以从母亲那里继承,还可以从爷爷奶奶
那里得到继承
特征
是指在对一个特定属性操作时,执行特定的函数,
以实现对属性的控制。即,特性在调用属性的时候会自动调用相应的⽅
法,也就是增加了一些额外的处理过程,如属性值的类型检查、验证属性
值设置是否合法等。
以实现对属性的控制。即,特性在调用属性的时候会自动调用相应的⽅
法,也就是增加了一些额外的处理过程,如属性值的类型检查、验证属性
值设置是否合法等。
异常
异常处理
触发异常
自动触发
手动触发
捕获异常
try-except
try-except-else-finally
常用库
scipy
statsmodels
sklearn
TensorFlow
文件操作
open
file对象
文件读取
文件写入
os模块
目录操作
文件操作
pandas
pandas入门
Series
定义Series
pd.Series
将字典递给Series,字典中的键成为Series的索引
获取值和索引
访问元素
更改索引
增加索引
重新定义索引
DataFrame
使用字典创建DataFrame
查看
head
tail
使用numpy数组构造DataFrame
直接读入csv文件或excel文件构造DataFrame
提取
使用索引提取
loc
iloc
ix
修改表结构
reindex:重新指定索引
增加行/列的数组
直接赋值
rename:修改列名
del、drop:删除行/列数据
pandas进阶
排序
sort_index
方法可对行或列索引进行排序,返回一个已排序的新对象
sort_index(axis, ascending)
sort_values
对DataFrame的某个/些列进行排序,可以用sort_values方法
DataFrame.sort_values(by, axis=0, ascending=True, inplace=False,
kind='quicksort', na_position='last')
kind='quicksort', na_position='last')
排名
rank
排名rank()方法是指从1开始一直到数据中的有效数据的数量为止,返回数据在排序中的位置
method
当有多个数据值相同时,会出现排名也相同的情况,这时可使用rank方法的method参数来处理
average:默认,在相同排名中为各个值平均分配排名
min:使用整个相同排名的最小排名
max:使用整个相同排名的最大排名
first:按值在原始数据中的出现顺序分配排名
运算
add
sub
div
mul
函数应用与映射
apply
apply的操作对象是DataFrame的一列或一行数据
applymap
applymap是元素级的,作用于每个DataFrame的每个数据
map
map也是元素级的,对Series中的每个数据调用一次函数
分组
groupby(列)
groups:查看分组
合并
concat
concat主要是根据索引进行行或列的拼接,只能取行或列的交集或并集
append
使用append方法将指定行追加到现有的pandas对象中
merge
merge可以将不同数据集依照某些字段(属性)进行合并操作,得到一个新的数据集
join
缺失值处理
isnull
创建一个布尔类型的掩码标签缺失值
notnull
与isnull() 操作相反
dropna
返回一个剔除缺失值的数据
fillna
返回一个填充了缺失值的数据副本
数据描述
统计量
集中趋势
均值
np.mean
stats.tmean(t)
中位数
np.median
stats.scoreatpercentile
分位数
np.median
stats.scoreatpercentile
scipy.stats.scoreatpercentile()函数计算指定分位点的分位数
stats.scoreatpercentile(t,25)
scipy.stats.scoreatpercentile()函数计算指定25%下四分位数
众数
stats.mode
离散程度
极差
np.ptp
np.max-np.min
四分位差
stats.scoreatpercentile(jddf['opening_price'],75)-stats.scoreatpercentile(jddf['opening_price'],25)
方差和标准差
np.var
np.std
协方差
np.cov
变异系数
cvc=jd_stock['closing_price'].std()/jd_stock['closing_price'].mean()
分布形状
偏度
skew()
stats.skew
峰度
kurt()
stats.kurtosis
统计表
describe()
通过pandas对象的describe方法得到各种变量的简单统计描述
线性回归
相关性分析
绘制散点图
相关系数计算
检验总体相关系数是否为零
线性回归分析
调用OLS建立带常数项的一元线性回归方程Model1
在Model1的自变量X1和因变量Y的散点图上附加回归直线和均值置信界限
调用OLS建立带常数项的多元线性回归方程Model2
模型2共线性解决方法:逐步筛选法选择自变量
调用OLS建立带常数项的多元线性回归方程Model3
调用OLS建立不带常数项的多元线性回归方程Model4
预测
Python基础
Anaconda
Anaconda的安装
Jupyter notebook的使用
在cmd窗口输入jupyter notebook
修改工作目录
临时切换:将cmd工作目录切换到目标目录,输入jupyter notebook
永久切换:https://blog.csdn.net/sxt1001/article/details/80726765
Python基础语法
Python基本数据类型的定义与操作
字符串
字符串拼接
转义字符
字符串格式化
字符串的内置方法
数据结构与序列
列表
索引和切片
list [ 起始位置 : 终止位置 : 步长 ]
列表操作
序列相加:使用”+“可以进行序列的连接
list():将其他类型转化为list
in:判断元素是否在列表内
列表方法
extend
将另一个列表添加到当前列表
insert
插入元素
pop
移除最后一个元素,并返回
reverse
反转列表
列表推导式
元组
字典
集和
条件语句
循环语句
函数
函数定义
函数的参数
必备参数
必须要对其传递值
命名参数
用参数的命名确定传递的参数值。顺序可以打乱
缺省参数
如果该参数值没有被传递,则认为是默认值 。缺省参数必须放在非缺省参数后面
不定参数
可以处理比声明时更多的参数
全局变量和局部变量
定义位置:函数外\函数内部
作用范围:整个程序范围内访问\函数内部进行访问
global关键字,声明全局变量
匿名函数
lambda
filter()函数
此函数的功能相当于过滤器
map()函数
将函数func作⽤于给定序列的每个元素
reduce()函数
将func函数(二元函数)作用于序列的元素,连续将现有结果和
迭代器、生成器的定义和创建方式
迭代器
iter:创建迭代器
next:使用迭代吗
没有数据时抛出StopIteration错误
生成器
定义:一般的函数执行之后只会返回单个值,生成器则是以延迟的方式返回一个值序列
装饰器
函数定义
注解定义
numpy
numpy入门
numpy导入
import numpy as np
array函数创建numpy数组对象
使用函数创建对象
向量:np.arange(初值, 终值, 步长)
等差数列:linspace(区间起始值, 区间终止值, 等分个数)
等比数列:logspace(区间起始值, 区间终止值, 等分个数)
全零数列:zeros(维度)
依赖内存状态的随机向量:empty(维度)
随机输向量:random.randn(维度)
numpy数组的索引和切片操作
a[起始位置:终止位置:步长]
索引
逻辑索引
条件索引
布尔索引
花式索引
numpy数组的属性
ndim:秩,即轴的数量或维度的数量
shape:数组的维度
dtype:对象的元素类型
size:数组元素的总个数
nbytes:数组所占的储存空间
numpy进阶
按照不同的维度对numpy数组排序
对数组a排序,返回一个排序后的数组(与a相同维度),a不变
numpy.sort(a,axis=1)
对数组a排序,返回一个排序后索引,a不变
numpy.argsort(a,axis=1)
此函数可以指定排序的顺序,用于对多个序列进行排序
np.lexsort((b,a))
内置的排序函数,对list,字典等等可以使用
sorted(b.iteritems(),key=operator.itemgetter(1),reverse=False)
数组的组和与分拆
组和
水平组和
垂直组和
深度组和
列组合
行组合
分拆
水平分拆
垂直分拆
深度分拆
各种分拆
ufunc的方法
reduce方法
accumulate方法
ufunc运算
函数运算
比较运算
布尔运算
自定义ufunc函数
reduceat方法
outer方法
广播
广播的引出
广播发生的情况
广播的原则
ogrid函数
mgrid函数
子主题
矩阵
矩阵是numpy提供的另外一种数据类型,可以使用mat或matrix函数将数组转化为矩阵。
一般情况下在python中都会使用数组来进行运算,因为数组更灵活、速度更快。
一般情况下在python中都会使用数组来进行运算,因为数组更灵活、速度更快。
数组的保存与读取
保存
读取
matplotlib
图形基本设置
创建图例
刻度设置
图像注解
图像大小
创建子图
绘制图标
直方图
hist
plot
盒须图
散点图
气泡图
词云图
jieba
Wordcloud
收藏
0 条评论
下一页