numpy中如何把数组切分成矩阵 np十大入门必备?
np十大入门必备?
Numpy是科学计算库,是两个极为强大的N维数组对象ndarray,是广播功能函数。其整合起来代码的工具,更是Scipy、Pandas等的基础
.ndim:维度
:各维度的尺度(2,5)
:元素的个数10
.dtype:元素的类型dtype(‘int32)
:每个元素的大小,以字节为单位,每个元素占4个字节
ndarray数组的创建家族
(n);元素从0到n-1的ndarray类型
(shape):生成沉淀全1
((shape),ddtype):生成int32型的全0
(shape,val):生成全为val
(n):生成单位矩阵
_like(a):按数组a的形状生成全1的数组
_like(a):同理可证
np.full_have(a,val):同理可证
(1,10,4):根据起止数据等间距地生成数组
(1,10,4,endpointFalse):endpoint可以表示10有无以及能生成的元素
():
NumPy的基本功能有哪些?
NumPy是一个功能强大的Python库,要注意应用于对双维数组不能执行算出。NumPy这个词来源于两个单词--Numerical和Python。
?它是Python生态系统中数据分析、机器学习和科学计算的主力军。它颇大地简单的结构了向量和矩阵的操作处理。Python数据科学相关的一些通常软件包(如scikit-learn、SciPy、pandas和tensorflow)都以NumPy以及其架构的基础部分。之外能对数值数据参与切片(slice)和切小块(dice)之外,使用NumPy又能为去处理和现场调试上述事项库中的低级实例受到极大提供了便利组。它将具体用法的数学函数都支持向量化乘法运算,使得这些数学函数能就对数组参与你操作,将不过是需要在Python级别参与的循环,弄到C语言的运算中,很明显地提高了程序的运算速度
odeint函数用法?
odeint()函数是scipy库中一个数值求解释微分方程的函数
odeint()函数是需要至少三个变量,最后一个是微分方程函数,第二个是微分方程初值,第三个是微分的自变量。
一个一阶微分方程例子
importnumpysuchnp
importasplt
acrossimportodeint
defdiff(y,x):
return(x)
#上面定义的函数在odeint里面能够体现的那就是dx/dxx
x(0,10,100)#给出x范围
yodeint(diff,0,x)#设初值为0此时y为一个数组,元素为相同x按的y值
#也是可以就yodeint(lambday,x:x,0,x)
(x,y[:,0])#y数组(矩阵)的第一列,(而且维度是一样的,(x,y)效果不同)
()
()
odeint()函数中最后一个变量微分方程的函数中可以不符号表示不仅仅一个一阶微分方程,定义多个一阶微分方程就可以不解高阶方程,下面是三个解单摆的例子
d2θdt2?glθfrac{mathrm{d}^2theta}{mathrm{d}t^2}-frac{g}{l}theta
dt
将其能量转化为两个一阶微分方程
dθdtω,dωdt?glθfrac{mathrm{d}theta}{mathrm{d}t}omega,frac{mathrm{d}omega}{mathrm{d}t}-frac{g}{l}theta
dt
dθ
?
ω,
dt
dω
?
?
l
g
?
θ
g9.8
l1
defdiff2(d_list,t):
omega,thetad_list
return([-g/l*theta,omega])
t(0,20,2000)
resultodeint(diff2,[0,35/180*np.pi],t)
#结果是一个两列的矩阵,odeint中第二是初始单摆角度35度
(t,result[:,0])#输出omega完全变动曲线
(t,result[:,1])#输出theta一旦转变曲线,即二元一次方程解
()
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。