前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python练习 numpy操作

python练习 numpy操作

原创
作者头像
NO23412号菜狗
修改2019-10-28 12:04:34
3970
修改2019-10-28 12:04:34
举报
代码语言:javascript
复制

a=[1,2,3,4]
a1=np.array([1,2,3,4])
print(a)
print(a1)
[1, 2, 3, 4]
[1 2 3 4]
可以看到numpy的数据更加紧凑

 python定义的列表没有reshape 所以只能对numpy数组执行该操作

a1=np.array([1,2,3,4,5,6,7,8,9])
a1=a1.reshape(3,3)
print(a1)
[[1 2 3]
 [4 5 6]
 [7 8 9]]
np.zeros((4,3))
array([[0., 0., 0.],
       [0., 0., 0.],
       [0., 0., 0.],
       [0., 0., 0.]])
生成 全0矩阵

np.eye(5)
array([[1., 0., 0., 0., 0.],
       [0., 1., 0., 0., 0.],
       [0., 0., 1., 0., 0.],
       [0., 0., 0., 1., 0.],
       [0., 0., 0., 0., 1.]])
生成单位矩阵

矩阵乘法

I=np.arange(1,7).reshape(2,3)
D=np.arange(1,10).reshape(3,3)
M=np.dot(I,D)
print(M)
[[30 36 42]
 [66 81 96]]
这里注意dot里的位置不同 有时候结果不同

元素求和

np.sum(M)
351
按行累加

np.sum(M,axis=1)
array([108, 243])
随即生成矩阵
 

ran1=np.random.rand(3,2)
print(ran1)
[[0.38877079 0.71820201]
 [0.24064133 0.63863328]
 [0.0446918  0.40998173]]
添加

np.append(a1,10)
array([ 1,  2,  3,  4,  5,  6,  7,  8,  9, 10])
求元素之间的差

b=np.diff(a1,n=1)
print(b)
np.diff(a1,n=2)
[[1 1]
 [1 1]
 [1 1]]
array([[0],
       [0],
       [0]])
组成矩阵

按行

b1=np.array([1,2,3])
b2=np.array([2,3,4])
b3=np.array([3,4,5])
np.vstack((b1,b3,b2))
array([[1, 2, 3],
       [3, 4, 5],
       [2, 3, 4]])
按列

np.column_stack((b2,b1,b3))
array([[2, 1, 3],
       [3, 2, 4],
       [4, 3, 5]])
矩阵转置

.T

迹

np.trace(a1)
15
特征值与特征向量

Import numpy.linalg as nplg
print(nplg.eig(a1))
(array([ 1.61168440e+01, -1.11684397e+00, -1.30367773e-15]), array([[-0.23197069, -0.78583024,  0.40824829],
       [-0.52532209, -0.08675134, -0.81649658],
       [-0.8186735 ,  0.61232756,  0.40824829]]))
A为n阶矩阵,若数λ和n维非0列向量x满足Ax=λx,那么数λ称为A的特征值,x称为A的对应于特征值λ的特征向量。 式Ax=λx也可写成( A-λE)x=0,并且|λE-A|叫做A 的特征多项式。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档