我是开发者之一。我们的App:今日好出行
申明一下,只是学习笔记,只是学习笔记,只是学习笔记。
1.python 机器学习软件包
Anaconda 下载链接 他包含了IPython、Numpy、scipy、Matplotlib、scikit-learn
2.IPython 基础
变量名称 + ? ------查阅内置文档
变量名称 + ??----看源代码
名称 + *?-------查看命名空间里的对象
%run +.py ----运行本地python文件
%timeit np(a,a)-------计算点乘矩阵所需运行时间
%who------查看当前环境变量列表
%whos ----查看当前环境变量列表(更详细)
%antomagic on----启用自动魔术命令,可省略%
reload( ====)-----重载模块
3.python 图形界面----Jupyter
先安装Jupyter----再执行ipython notebook
一个notebook,以.ipynb为后缀,基于json格式的文件
Help KeyBoard Shortcuts
例子
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0,2*np.pi,num=100)
y = np.sin(x)
plt.plot(x,y)
正弦(xian)曲线
4.Numpy 简介
Numpy 是python 科学计算的基础库,主提供高性能N维数组实现以及计算能力,集成能力,基础数学算法
导入import numpy as np
数组:A=np.array([1,2,3,4]) 数组维度 A.ndim 数组类型 A.shape 数组元素类型:A.dtype
连续数组 np.arange()
等分数组 np.linespace(0,2 ,11 )
元组 np.ones((3,3))
零组np.zeros((3,6))
单位组 np.eye(4)
随机数组 np.random.randn(6,4)
灵活地数组访问机制 a[:4],a[4:],a[3:7]半开闭区间不包含最后一个元素; a[2:3:4],起始,结束,步长 a[2: :2],省略结束位置,a[::2],开始结束都省略
广播机制 布尔数组
Numpy 数组内存是共享的,np.may_share_memory()判断两个数组是否共存
另存需要------显式备份
埃拉托斯特尼筛法打印1--100的质数
5.numpy运算
数组和标量加法
数组和标量乘法
数组加法
数组相乘
矩阵内积
如果数组维度不同,则Numpy会试图使用广播机制来匹配,如果能匹配得上,就运算,匹配不上就报错。
广播条件:两个数组必须有一个维度可以拓展,也就是,列相同或行相同。
数组比较 ,返回一个同纬度的布尔数组。函数 (a==b). all( ) 和(a==b).any( ) 很奇怪啊
内置函数 cos sin tan 之类的
求和、求平均、求方差 a.sum a.mean() a.std() a.min() a.max( ) a.argmin() a.argmax
多维数组,根据行或列计算 b.sum(axis=0) b.min(axis = 1) 0表示按行计算,1表示按列计算。列计算结果,默认转为行。与matlab 行行为相差甚远
b.ravel( )将数组摊平为一维数组
np.newaxis 新加一个维度 a=np.arrange(4);
行上新加 b= a[np.newaxis,:]
列上新加 b= a[:,np.newaxis]
数组排序 按行单独排序 b = np.sort(a,axis = 1) 按列单独排序 b = np.sort(a,axis = 0)
多项式求解 X^2 - 4*x + 3
p=np.ployId([1,-4,3])
p(0) 自变量为0时的值
p.roots //多项式的根
p.order //多项式的劫数
p.coffes // 多项式的系数
多项式拟合 np.polyfit()
6.蒙特卡洛罗算法计算圆周率,修改n_dots的值来查看点的个数对计算结果的精度影响
7. a.npy 特有的二进制格式
作者:吉林天师
链接:https://www.jianshu.com/p/770a6e75e4b4
共同学习,写下你的评论
评论加载中...
作者其他优质文章