Scipy简介
Scipy是一个以Numpy模块为基础的第三方Python模块,使用Scipy模块可以完成一些进阶的科学计算操作,所以在学习Scipy的过程中需要一定的数学基础,比如高等数学、线性代数、微积分和概率论等。
Scipy常用模块简介
scipy.cluster:聚类相关 1. scipy.fftpack:快速傅里叶变换相关 2. scipy.integrate:积分和常微分方程求解相关 3. scipy.interpolate:插值相关 4. scipy.io:输入输出相关 5. scipy.optimize:优化相关 6. scipy.signal:信号处理相关 7. scipy.sparse:稀疏矩阵相关 8. scipy.stats:统计相关 9. scipy.ndimage:N维图像处理相关 10. scipy.misc:图像处理相关 11. scipy.maxentropy:最大熵相关 12. scipy.constant:物理和数学常数相关 13. scipy.special:特殊函数
常用Scipy函数
import scipy as sp # 插值模块interpolate sp.interpolate.inter1d()#一维插值 sp.interpolate.inter2d()#二维插值 sp.interpolate.internd()#n维插值 插值函数中kind参数: ‘nearest’:最近邻插值 ‘zero’:零阶插值 ‘linear’:线性插值(一次插值) ‘quadratic’:二次插值 ‘cubic’:三次插值 数字4,5,6,7为更加高阶的插值方法 # 统计相关模块stats sp.stats.norm.rvs()#标准正态分布 sp.stats.norm.fit()#估算正态分布的参数 sp.stats.norm.pdf()#计算对应位置的概率密度 sp.state.norm.ppf()#找到标准正态分布中概率恰好为一半的点 sp.stats.expon()#指数分布 sp.stats.norm.cdf()#累积分布函数 sp.stats.norm.sf()#残存函数 sp.stats.norm.isf()#逆残存函数 sp.stats.t()#t分布 sp.stats.beta()#beta分布 sp.stats.gamma()#gamma分布 sp.stats.hypergeom()#超几何分布 sp.stats.lognorm()#对数正态分布 sp.stats.uniform()#均匀分布 sp.stats.chi2()#卡方分布 sp.stats.cauchy()#柯西分布 sp.stats.laplace()#拉普拉斯分布 sp.stats.rayleigh()#瑞利分布 sp.stats.randint()#离散均匀分布 sp.stats.f()#f分布 sp.stats.binom()#二项分布 sp.stats.poisson()#泊松分布 sp.stats.rv_continuous()#自定义连续分布 sp.stats.rv_discrete()#自定义离散分布 sp.stats.mode()#计算数据的众数 sp.stats.skew()#计算数据的偏度 sp.stats.kurtosis()#计算数据的峰度 sp.stats.ttest_rel()#配对样本t检验 sp.stats.ttest_ind()#独立样本t检验 sp.stats.ttest_1samp()#单样本t检验 #优化模块optimize sp.optimize.leastsq()#函数的最小二乘估计 sp.optimize.curve_fit()#函数的曲线拟合 sp.optimize.minimize()#函数的最小值 sp.optimize.rosen()#Rosenbrock函数(用来测试效果的非凸函数) sp.optimize.root()#方程求根 sp.optimize.dual_annealing()#退火优化方法 #积分模块 sympy.init_printing()#初始化Sympy符号变量的显示 sympy.symbols()#产生Sympy符号变量 sympy.sqrt()#符号变量开方 sympy.sin()#符号变量求正弦 sympy.integrate()#符号变量求积分 sp.specail.jv()#贝塞尔函数 sp.intergrate.quad()#利用函数进行数值积分 sp.integrate.dblquad()#利用函数进行双重数值积分 sp.integrate.simps()#利用采样点进行数值积分 sp.integrate.trapz()#利用采用点进行数值积分 #稀疏矩阵模块 sp.sparse.coo_matrix()#创建COO类型的稀疏矩阵 sp.sparse.find()#查找稀疏矩阵中非零值及其坐标 #线性代数模块 sp.linalg.inv()#矩阵的逆 sp.linalg.solve()#线性方程组求解 sp.linalg.det()#求矩阵的行列式 sp.linalg.norm()#求矩阵或者向量的范数 sp.linalg.pinv()#求矩阵的广义逆 sp.linalg.eig()#矩阵的特征值分解 sp.linalg.svd()#矩阵的奇异值分解 #图像处理模块 sp.ndimage.ndimage.median_filter()#中值滤波 sp.ndimage.ndimage.guassian_filter()#高斯滤波 sp.signal.wiener()#维也纳滤波 sp.ndimage.ndimage.shift()#移动坐标 sp.ndimage.ndimage.rotate()#旋转坐标 sp.ndimage.ndimage.zoom()#缩放图片 sp.misc.imread()#读取图像 sp.misc.imresize()#改变图像尺寸 sp.misc.imsave()#保存图像
更多的使用方法可以去官方的网站学习.....小弟就不在这一一列举了。
参考:
《Python机器学习手册》——从数据预处理到深度学习
《自学Python》——编程基础、科学运算及数据分析
《Python编程快速上手》——让繁琐工作自动化