夜的独白

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

从今天开始看 《Python数据分析实战》
这本书,今天看了这本书的第三章:Numpy部分,在书中看到了numpy中的两个方法numpy.column_stack与numpy.row_stack有一点自己的思考,先上代码:

    >>> import numpy as np
    >>> a = np.array([0, 1, 2])
    >>> b = np.array([3, 4, 5])
    >>> c = np.array([6, 7, 8])
    >>> np.column_stack((a, b, c))
    array([[0, 3, 6],
           [1, 4, 7],
           [2, 5, 8]])
    >>> np.row_stack((a, b, c))
    array([[0, 1, 2],
           [3, 4, 5],
           [6, 7, 8]])
[/code]

书中并没有对这段代码给详细的解释也没有说明numpy.column_stack与numpy.row_stack这两个方法的具体使用方法,那就只能自己探究清楚啦!

先去看官方文档是怎么说的:

[ numpy.column_stack(tup)
](https://docs.scipy.org/doc/numpy/reference/generated/numpy.column_stack.html)
:

> Stack 1-D arrays as columns into a 2-D array.
>
> Take a sequence of 1-D arrays and stack them as columns to make a single 2-D
> array. 2-D arrays are stacked as-is, just like with [ ` hstack  `
> ](https://docs.scipy.org/doc/numpy/reference/generated/numpy.hstack.html#numpy.hstack
> "numpy.hstack") .  1-D arrays are turned into 2-D columns first.

看了官方文档一下子就清楚了,把一维数组按列排列成多维数组。拿上面的例子来说就是先取a, b, c的第一个元素构成第一行,再取a, b,
c的第二个元素构成第二行,最后取a, b, c的第三个元素构成第三行,这样最后得到的结果就像是将a, b,
c按列排列成多维数组一样,那么同理numpy.row_stack也很好理解啦!  

[ 欢迎大家来我的Github看我今天下午写的有关Numpy的代码! ](https://github.com/olivercqc/Learning-
Data-Science-from-scratch-with-Python/blob/master/01.%20Numpy.ipynb)
这篇文章是自己的一点思考,如果网友发现有错误之处,请大家不吝指教!十分感谢!


![在这里插入图片描述](https://img-blog.csdnimg.cn/20210608151750993.gif)
posted on 2021-07-01 19:38  夜的独白  阅读(285)  评论(0)    收藏  举报