python numpy学习

作者: julycan | 来源:发表于2018-04-03 11:49 被阅读0次

numpy是python进行科学计算的核心库。

numpy可以作为多维通用数组使用,可以定义任意数据类型。它提供一个高性能多维数据对象,以及操作这个对象的工具。

本文列举了学习中遇到的numpy函数,以及使用用法。
下一段是描绘的一个函数,准备画出来

import numpy as np 
x = np.arange(-200,-100,1)
y = np.arange(-5,5,0.1)
Z =np.zeros((len(x),len(y)))
X,Y =np.meshgrid(x,y)
for i in range(len(x)):
    for j in range(len(y)):
        b = x[i]
        w = y[j]
        Z[j][i]=0
        for n in range(len(x_data)):
                Z[j][i]=Z[j][i]+(y_data[n]-b-w*x_data[n])**2
        Z[j][i] = Z[j][i]/len(x_data)
plt.plot(x,y,Z)
plt.xlim(-200,-100)
plt.ylim(-5,5)
plt.xlabel(r'$x$',fontsize=16)
plt.ylabel(r'$y$',fontsize=16)
plt.show()
image.png
  1. import numpy as np引用numpy库,都以这一句开头
  2. x = np.arange(-200,-100,1) 设置x是-200 到-100的数组,间隔为1
  3. Z =np.zeros((len(x),len(y))) np.zeros返回给定形状的零矩阵。这里指返回len(x) * len(y)的零矩阵
  4. X,Y =np.meshgrid(x,y)
    meshgrid函数用两个坐标轴上的点在平面上画网格,meshigrid(x,y)的作用是产生一个以向量x为行,向量y为列的矩阵。
    矩阵X的行向量是向量x的横坐标的简单复制,矩阵Y的列向量是向量y的纵坐标的简单复制。
    假设
x的值:
array(0,0.5,1,1.5,2)
y的值:
array(1,2,3)

那么X和Y都是6*3维矩阵

X的值:
X=[0,0.5,1,1.5,2
   0,0.5,1,1.5,2
   0,0.5,1,1.5,2]
Y的值:
Y=[1,1,1,1,1,1
   2,2,2,2,2,2
   3,3,3,3,3,3]

相关文章

网友评论

    本文标题:python numpy学习

    本文链接:https://www.haomeiwen.com/subject/jusqhftx.html