第三阶段数据分析模块总结
先来给上一个阶段定下的任务做一个小总结
1.在Mysql方面,对变量赋值更加熟悉了,常见的排名问题也拥有了解题的能力;
2.把Mysq经典45道题也复刷了一遍,对题目的思路和解法已经比较熟练了。
但也发现了新的问题:对于时间函数的还是不太熟悉。
3.第三阶段的知识已经学习完了。在练习题中,1-5题都没有问题,6-10题在题目的理解和解法的理解上有点模糊。
第三阶段知识总结
在这个阶段中,我把知识分成三大部分:anaconda&jupyter notebook、pands、numpy
anaconda&jupyter notebook
anaconda
理解:anaconda是开源的python版本,用于搭建虚拟环境
jupyter notebook
理解:jupyter notebook是anaconda自带的一个编写笔记本,本质上是一个文档。
操作::功能:Cell(代码)、Markdown(编写文本)、Raw NBConvert(文本和代码都不会被执行)
heading(标题)
知识点:命令模式与编辑模式快捷键掌握、Markdown语法
pandas
理解:用于进行数据分析的模块,拥有对数据可视化的功能。
操作分为两个部分:pandas操作、DataFrame&Series操作
pandas操作:
1.文件读取:read_文件格式(文件路径)
2.数据查询:查询行:
函数:loc[索引] 、iloc[位置] #loc函数索引范围左闭右闭,iloc 函数索引范围左闭右开
方法:行索引、切片、bool类型,指定列查询行
知识点:loc函数以索引查询,iloc以位置查询
查询列:语法:dataframe['列']
方法:列索引、切片、bool类型
查询每列数据类型:列.info
注:切片查询、bool类型查询中,行、列呈现的效果一样
查询行列:函数:loc[行索引,列索引]
方法:索引、切片、条件查询
3.数据拼接:concat([表,表])
4.数据关联:merge(表,表)
5.数据分组:groupby('列')
6.聚合函数的使用:max()、min()、mean()、std()等等
7.与数据库的连接
知识点:函数里常用的参数!
DataFrame操作
1.表创建:函数: pandas.DataFrame(表)
用法:多维列表创建、数组字典创建()
2.常用操作:查询行索引:index
查询列索引:columns
修改列索引:columns=()、rename(columns={})
修改行索引:set_index(‘列’)
3.数据预览:预览数据属性:info()
预览数据内数值的属性:describe()
4.查询:从头开始查询:head() #默认只输出五行
从尾开始查询:tail() #默认输出五行
数据总量:size
字段类型:dtypes
行数量:shape[1] #0为列,1为行
修改数据:replace()、map()
查询某列的值:unique()
查询某列值的数量:nunique()
查询某列某值出现次数:value_counts()
排序:索引排序:sort_index(索引列) #参数ascending决定排序方向,True为升序,False为 倒序
数据排序:sort_values(列)
5.聚合函数使用:max()、min()、mean()、sum()、comsum()等等
6.增加&删除:增加一列:DataFrame['名字']=数据
删除一列 del 、drop(labels=行)
知识点:魔法函数、函数的参数!
Series操作
1.创建:pandas.Series([数据])
2.自定义索引:pandas.Series([数据],index=[])
2.转换至DataFrame:to_frame()
3.转置 .T
numpy操作
理解:用于矩阵的创建
操作:
1.矩阵创建:array([数据}) #矩阵内数据类型是统一的
快速创建:填充指定值:full([矩阵大小],填充值)
填充0值:zeros()
填充1值:ones()
序列矩阵创建:arange(beigin,end,步长) #范围左闭右开
创建以随机数为数据的矩阵:random.random(矩阵大小) #数据默认默认范围为-1,1
平均划分矩阵:linspace(beigin,end,划分数)
2.查询:索引查询:矩阵名[行索引,列索引] #索引范围左闭右开
切片查询:矩阵名[行索引或切片,列索引]
知识点:data[[0:1],[0:1]] 输出:第一行第一列与第二行第二列的值
bool查询
3.查看矩阵属性:数据类型:dtypes
数据类型转换:astype(类型)
4.聚合函数:求和:sum(axis=) #axis=0为行,axis=1为列
求指数:exp(矩阵名)
求开方:sqrt(矩阵名)
5.矩阵转换:多维转一维:矩阵名.ravel()
6.扩展:tile(矩阵,(扩展大小))
7.拼接与分割:拼接:
水平拼接:hstack((矩阵,矩阵))
竖直拼接:vstack((矩阵,矩阵))
分割:
竖直分割:hsplit(矩阵,分割数量)
水平分割:vsplit(矩阵,分割数量)
本阶段总结
本阶段的学习主要还是熟悉好语法以及对参数的理解与熟悉
下阶段计划
1.Mysql方面复刷leetcode简单、中等题目,复习时间函数;
2.视内容量,每天复习一到两篇第三阶段知识的笔记;
3.完成并熟悉理解第三阶段的6-10题作业
4.完成学习第四阶段知识。