数据分析之前奏

课程目的:帮助大家掌握表示、清洗、统计、展示数据的能力
讲解主要内容:
NumPy:ndarray以及存取数据的基本方法和相关数据操作函数
Matplotlib:pyplot介绍绘制图形的方法
Pandas:数据分析中最有效的第三方库,series 、DataFrame两种类型及其操作方式
Projects:四个案例
主题思想:介绍如何理解一组数据表达的含义
摘要:有损的提取数据特征的过程
通过摘要可以得到数据:

  1. 基本统计(含排序)
  2. 分布/累计统计
  3. 数据特征
    相关性、周期性等
    4.数据挖掘(形成知识)
    编程工具:
    anoconda IDE
    掌握:conda、spyder、Ipython

Python IDE工具

IDLE:适用python入门,代码300+以内
SublimeText:专为程序员开发的第三方专用编程工具,专业编程体验,多种编程风格,工具非注册免费使用
Wing:公司维护,工具收费,调试功能丰富,版本控制,版本同步,适合多人协作编程
Visual Studio&PTVs
PTVs
微软公司维护,调试功能丰富
Eclipse&PyDev
配置复杂一点
PyCharm
社区版本免费
简单,集成度高
适用较大的工程编写
科学计算,数据分析
Canopy
公司维护,工具收费
支持近500个第三方库
Anaconda
开源免费
支持近800个第三方库

Anaconda IDE使用

下载网址:
支持版本:
集成各类python工具的平台
conda:包管理和环境管理工具
包管理类似于pip,管理Python第三方库(安装,卸载,更新)
环境管理允许用户可以使用不同版本Python,并且可以自由切换
anaconda:一个集合,包括conda、某版本Python、一批第三方库。
conda将工具、第三方库、Python版本、conda都当做包,管理十分方便
cmd conda –version可以查看conda版本
conda update conda 可以升级conda版本
Spyder:编写和调试python语言的编辑器
Ipython:交互式编程环境
是一个功能强大的交互式shell
适合交互式数据可视化和GUI相关应用
技巧:“?”获得python变量的通用信息
“%run python文件”运行py文件
“%magic”显示所有魔术命令
“%hist”IPython命令的输入历史
%pdb 异常发生后自动进入调试器
%reset 删除当前命名空间的全部变量或名称
%who 显示Ipython当前命名空间已经定义的变量
%time statement 给出代码的执行时间,statement是一段代码
%timeit statement 多次运行代码,返回平均执行时间

第一课

数据的维度

一维数据
列表和数组
一组数据的有序结构
列表,数据可以是不同类型
数组,数据必须是相同类型
二维数据是一维数据的组合形式
多维数据是由一维或者二维数据在新维度上扩展形成。
高维数据仅利用最基本的二元关系展示数据间的复杂结构。
一维数据:列表(有序),集合(无序)
二维数据:列表类型(每个元素又是列表)
多维数据:列表类型
高维数据:字典类型或数据表示格式
JSON、XML、YAML国际公认的三种数据表示格式
NumPy
NumPy是一个开源的Python科学计算基础库
*一个强大的N为数组对象ndarray
*广播功能函数
*整合C/C++/Fortran代码的工具
*线性代数、傅里叶变换、随机数生成等功能
scipy,pandas等数据处理和计算科学库的基础

N维数组对象:ndarray

  • 数组对象可以去掉元素间运算所需的循环,使一维向量更像单个数据
  • 设置专门的数组对象,经过优化,可以提高这类应用的运算速度
  • 数组对象采用相同的数据类型,有助于节省运算和存储空间
  • ndarray
    *实际的数据
    *描述这些数据的元数据(维度,数据类型等)
    *一般要求所有元素类型相同,数组下标从0开始
    轴(axis):保存数据的维度
    秩(rank):轴的数量
    .ndim 秩,轴的数量或者维度
    .shape 形状
    .size 元素数量
    .dtype 对象的元素类型
    .itemsize每个元素的大小,以字节为单位

    ndarray数组的创建方法

    (1)从python中的列表、元组等类型创建ndarray数组
    x=np.array(list/tuple)
    x=np.array(list/tuple,dtype=np.float32)
    如果不指定,ndarray会根据数据情况确定dtype类型
    (2)使用NumPy中函数创建ndarray数组
    np.arrange(n)类似range()函数,返回ndarray类型,元素从0到n-1,生成的元素是整数类型
    np.ones(shape):shape是元组类型
    np.zeros(shape),除非用户指定数据类型,否则ones和zeros生成的数据元素都是浮点型
    np.eye(dim),创建秩为dim的单位矩阵
    np.ones_like(a)根据数组a的形状生成一个全1数组
    np.zeros_like(a)
    np.full_like(a,val),根据数组a的形状生成一个值全val的数组
    np.linespace:根据起止数据等间距地填充数据,形成数组
    np.concatenate((a,b)):可以连接两个数组a,b
    ndarray数组的维度变换
    .reshape(shape)
    .resize(shape)
    返回一个shape形状的数组,reshape不改变原数组,resize改变原数组
    .swapaxes(ax1,ax2)将数组n个维度的ax1维度和ax2维度进行交换
    .flatten()对数组进行降维,返回折叠后的一维数组,不改变原数组
    ndarray数组的类型变换
    new_a=a.astype(new_type)会创建新数组
    Is=a.tolist()将ndarray a转换成list

    数组的索引和切片

    数组的索引和切片:与Python的列表相似
    a[1:4:2] 起始编号:终止编号:步长
    多维数组索引:a[1,2,3]
    多维数组切片:a[:,:,:2]
    

ndarray数组的运算

数组与数量的运算

数组与标量之间的运算作用于数组的每一个元素
np.abs(x),np.fabs(x)等
np.ceil(x)
np.floor(x)
计算ceiling值或floor值
ceiling表示不超过元素的整数值
floor表示小于元素的最大整数值
np.rint(x)计算各元素的四舍五入值

numpy入门总结

数据的维度

一维数据,二维数据,多维数据,高维数据

ndarray类型属性、创建和变换
数组的索引和切片方式
数组的运算,一维函数的运算
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值