首页 > 编程知识 正文

rnapulldown结果分析,scipy和numpy区别

时间:2023-05-05 08:28:15 阅读:35646 作者:3037

文章目录1概要2常数模块3优化器4稀疏矩阵5图表结构6空间数据

1配置文件

Scipy是一个基于Numpy的科学计算库,用于数学、科学、工程等领域,有许多高级抽象和物理模型需要使用Scipy。 SciPy包含的模块有优化、线性代数、积分、插值、特殊函数、快速傅立叶变换、信号处理和图像处理、常微分方程求解以及其他科学和工程中常用的计算。

使用前必须正确安装scipy模块。 我在使用anaconda的Jupyter笔记本。 由于内置了scipy,所以不需要再安装。 示例代码如下:

fromscipydcsortconstantsprint (constants.acre )输出1英亩为多少平方米,4046.8564223999992以下列出了scipy中常用的模块。

模块名称功能scipy.cluster矢量量化scipy.constants数学常数scipy.fft快速傅立叶变换scipy.integrate积分scipy.interpolate插值scipy.io数据输入/输出scipy.fft 正交距离回归scipy.optimize优化算法scipy.signal信号处理scipy.sparse稀疏矩阵scipy.spatial空间数据结构与算法scipy.special特殊数学函数scipy/stats统计函数2

小于或等于fromscipydcsortconstantsconstants.pi 3.141592653589793的实例输出黄金比例。

constants.golden 1.618033988749895若要确定constants模块中包含的常量,请使用dir ()函数。

DIR(constants ) ) ['Avogadro,) Boltzmann,(Btu,) Btu_IT,(Btu_th,) ConstantWarning,(g,) JT ' Stefan ' __doc__ '__spec__ '、' _obsolete_constants '、' acre '、' alpha '、' angstrom '、' arcmin '、' ' bbl '、' blob '、' c '、' calorie '、' bbl '、' blob '、' c '、' calorie '、' constants '、' convert _ ' dyn '、' elementary_charge '、' epsilon_0'、' erg '、' exa '、' exbi '、' femto '、' fermi '、'、' find ' ' gallon_dcs '、' gas_constant '、' gibi bit ' ' gravitational _ constant '、h '、hbar '、hectare '、hecto '、hororor inch' 「knot、lambda2nu、lb、lbf、light_year、liter、litre、long_ton、m_e

'mu_0', 'nano', 'nautical_mile', 'neutron_mass', 'nu2lambda', 'ounce', 'oz', 'parsec', 'pebi', 'peta', 'physical_constants', 'pi', 'pico', 'point', 'pound', 'pound_force', 'precision', 'proton_mass', 'psi', 'pt', 'short_ton', 'sigma', 'slinch', 'slug', 'speed_of_light', 'speed_of_sound', 'stone', 'survey_foot', 'survey_mile', 'tebi', 'tera', 'test', 'ton_TNT', 'torr', 'troy_ounce', 'troy_pound', 'u', 'unit', 'value', 'week', 'yard', 'year', 'yobi', 'yotta', 'zebi', 'zepto', 'zero_Celsius', 'zetta']

常量模块包含以下几种单位:公制单位,二进制,以字节为单位,质量单位,角度换算,时间单位,长度单位,压强单位,体积单位,速度单位,温度单位,能量单位,功率单位,力学单位等。

国际单位制词头:(英语:SI prefix)表示单位的倍数和分数,目前有20个词头,大多数是千的整数次幂。如:

kilo103deci10-1micro10-6centi10-2>>> constants.kilo1000.0>>> constants.deci0.1>>> constants.micro1e-06>>> constants.centi0.01

二进制前缀:返回字节单位。如:

kibi210mebi220gibi230>>> constants.kibi1024>>> constants.mebi1048576

质量单位:返回多少千克kg。如:

>>> constants.gram #1克0.001>>> constants.metric_ton #1吨1000.0>>> constants.pound #1磅0.45359236999999997

角度单位:返回弧度。

>>> constants.degree #π/1800.017453292519943295

时间单位:返回秒数。

>>> constants.minute60.0>>> constants.hour3600.0

长度单位:返回米数。

>>> constants.inch #英寸0.0254>>> constants.mile #英里1609.3439999999998

面积单位:返回多少平方米,平方米是面积的公制单位,其定义是:在一平面上,边长为一米的正方形之面积。

>>> constants.acre #英亩4046.8564223999992>>> constants.hectare #公顷10000.0

体积单位:返回多少立方米,立方米是容量计量单位,1立方米的容量相当于一个长、宽、高都等于1米的立方体的体积。

>>> constants.gallon #加仑0.0037854117839999997

速度单位:返回每秒多少米。 #音速

>>> constants.speed_of_sound340.5 3 优化器

SciPy的optimize模块提供了常用的最优化算法函数实现,可以直接调用这些函数完成某些优化问题,比如查找函数的最小值或方程的根等。NumPy能够找到多项式和线性方程的根,但它无法找到非线性方程的根,如x+cos(x)。可以使用SciPy的optimze.root函数,这个函数需要两个参数:

fun-表示方程的函数。x0-根的初始猜测。

该函数返回一个对象,其中包含有关解决方案的信息。实际解决方案在返回对象的属性x,查看如下实例,查找x+cos(x)方程的根:

>>> from scipy.optimize dcsort root>>> from math dcsort cos>>> def eqn(x):... return x+cos(x)...>>> myroot=root(eqn,0)>>> myroot.xarray([-0.73908513])>>> myroot fjac: array([[-1.]]) fun: array([0.]) message: 'The solution converged.' nfev: 9 qtf: array([-2.66786593e-13]) r: array([-1.67361202]) status: 1 success: True x: array([-0.73908513])

可以使用scipy.optimize.minimize()函数来最小化函数,这里不详细介绍,请看这里。

4 稀疏矩阵

稀疏矩阵(英语:sparse matrix)指的是在数值分析中绝大多数数值为零的矩阵。反之,如果大部分元素都非零,则这个矩阵是稠密的(Dense)。

上述稀疏矩阵仅包含9个非零元素,另外包含26个零元。SciPy的scipy.sparse模块提供了处理稀疏矩阵的函数。主要使用以下两种类型的稀疏矩阵:

CSC-压缩稀疏列(Compressed Sparse Column),按列压缩。CSR-压缩稀疏行(Compressed Sparse Row),按行压缩。

本节主要使用CSR矩阵。通过向scipy.sparse.csr_matrix()函数传递数组来创建一个CSR矩阵:

>>> dcsort numpy as np>>> from scipy.sparse dcsort csr_matrix>>> arr=np.array([0,0,0,0,0,1,1,0,2])>>> print(csr_matrix(arr)) (0, 5) 1 (0, 6) 1 (0, 8) 2

结果解析:

第一行:在矩阵第一行(索引值0)第六(索引值5)个位置有一个数值1。
第二行:在矩阵第一行(索引值0)第七(索引值6)个位置有一个数值1。
第三行:在矩阵第一行(索引值0)第九(索引值8)个位置有一个数值2。

用data属性查看存储的数据(不含0元素):

>>> arr=np.array([[0,0,0],[0,0,1],[1,0,2]])>>> arrarray([[0, 0, 0], [0, 0, 1], [1, 0, 2]])>>> csr_matrix(arr).dataarray([1, 1, 2], dtype=int32)

用count_nonzero()方法计算非0元素的总数:

>>> arr=np.array([[0,0,0],[0,0,1],[1,0,2]])>>> csr_matrix(arr).count_nonzero()3 5 图结构

图是各种关系的节点和边的集合,节点是与对象对应的顶点,边是对象之间的连接。SciPy提供了scipy.sparse.csgraph模块来处理图结构。

用scipy模块可以对图使用:

1、dijkstra最短路径算法;

2、floyd算法;

3、bellman ford算法;

4、dfs、bfs算法等图算法。

这里不详细介绍,请看这里。

6 空间数据

空间数据又称几何数据,它用来表示物体的位置、形态、大小分布等各方面的信息,比如坐标上的点。SciPy通过scipy.spatial模块处理空间数据,比如判断一个点是否在边界内、计算给定点周围距离最近点以及给定距离内的所有点。

这里不详细介绍,请看这里。

还有【matlab数组】、【插值】、【显著性检验】,估计用不到,就不整理了。

END

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。