最近在学习机器学习的时候,发现自己底子还没有打牢,写个帖子,以后方便回顾。
In [2]: import numpy as np
In [3]: x = np.linspace(0, 4, num=5)
...: y = np.linspace(0, 4, num=5)
In [4]: x
Out[4]: array([0., 1., 2., 3., 4.])
In [5]: y
Out[5]: array([0., 1., 2., 3., 4.])
首先创立两个列表,然后使用meshgrid()
In [6]: xx, yy = np.meshgrid(x, y)
In [7]: xx
Out[7]:
array([[0., 1., 2., 3., 4.],
[0., 1., 2., 3., 4.],
[0., 1., 2., 3., 4.],
[0., 1., 2., 3., 4.],
[0., 1., 2., 3., 4.]])
In [8]: yy
Out[8]:
array([[0., 0., 0., 0., 0.],
[1., 1., 1., 1., 1.],
[2., 2., 2., 2., 2.],
[3., 3., 3., 3., 3.],
[4., 4., 4., 4., 4.]])
meshgrid会返回两个列表,对应着看其实其实就是返回了x,y两个列表所能组合的矩阵坐标,组合起来大概如下图
array([[0., 0.],
[1., 0.],
[2., 0.],
[3., 0.],
[4., 0.],
[0., 1.],
[1., 1.],
[2., 1.],
[3., 1.],
[4., 1.],
[0., 2.],
[1., 2.],
[2., 2.],
[3., 2.],
[4., 2.],
[0., 3.],
[1., 3.],
[2., 3.],
[3., 3.],
[4., 3.],
[0., 4.],
[1., 4.],
[2., 4.],
[3., 4.],
[4., 4.]])