一、环境部署
1.python包管理:
(1)安装:pip install xxx,conda install xxx
(2)卸载:pip uninstall xxx, conda uninstall xxx
(3)升级:pip install -upgrade xxx, conda update xxx
2.IDE
1)Jupyter notebook:
(1)Anaconda自带,无需单独安装
(2)记录思考过程,实时查看运行进程
(3)基于web的在线编辑器(本地)
(4).ipynb文件分享
(5)可交互式
(6)记录历史运行结果
(7)支持Markdown,Latex
2)IPython
(1)Anaconda自带,无需单独安装
(2)Python的交互式命令行Shell
二、NumPy数据结构以及向量化
1.Numpy :Numerical Python
(1)高性能科学计算和数据分析(pandas)的基础包,提供多维数组对象
(2)ndarray,多维数组(矩阵),具有矢量运算能力,快速、节省空间
(3)矩阵运算,无需循环,可完成类似Matlab中的矢量运算
(4)线性代数、随机数生成
(5)import numpy as np
2.Scipy
(1)在NumPy库的基础上增加了众多数学、科学以及工程常用的库函数
(2)现行代数、微分方程求解、信号处理、图像处理、系数矩阵等
(3)import scipy as sp
3.NumPy数据结构
(1)ndarray,N维数组对象(矩阵)
所有元素类型必须相同
ndim属性 维度的个数
shape属性,各维度的大小
dtype属性,数据类型
(2)创建ndarray
np.array(collection),collection为序列性对象(list),嵌套序列(list of list)
np.zeros,np.ones,no.empty指定大小全为0或者全为1的数组
注意:第一个参数是元组,用来指定大小,如(3,4)
empty不是总是返回全0,有时候返回的是未初始的随机值
4.代码学习
(1)生成两行三列的随机数,并打印出数据的类型
(2)分别打印出刚才创建的维度的个数,维度大小以及数据类型
(3)全0,全1以及全空
5.索引与切片
(1)一维数组的索引与Python的列表索引功能相似
(2)多维数组的索引
arr[r1:r2,c1:c2]
arr[1,1]等价于arr[1][1]
[:]代表某个维度的数据
arr[1:2,1:2]代表访问数组中第1行到第2行以及第1列到第2列的数据
(3)条件索引
布尔值多维数组arr[condition]condition可以是多个条件的组合。
注意,多个条件组合要使用& | 而不是and or