一 .  np.vstack: 按垂直方向(行顺序)堆叠数组构成一个新的数组

In[3]:
import numpy as np In[4]:
a = np.array([[1,2,3]])
a.shape
Out[4]:
(1, 3) In [5]:
b = np.array([[4,5,6]])
b.shape
Out[5]:
(1, 3) In [6]:
c = np.vstack((a,b)) # 将两个(1,3)形状的数组按垂直方向叠加
print(c)
c.shape # 输出形状为(2,3)
[[1 2 3]
[4 5 6]]
Out[6]:
(2, 3) In [7]:
a = np.array([[1],[2],[3]])
a.shape
Out[7]:
(3, 1) In [9]:
b = np.array([[4],[5],[6]])
b.shape
Out[9]:
(3, 1) In [10]:
c = np.vstack((a,b)) # 将两个(3,1)形状的数组按垂直方向叠加
print(c)
c.shape # 输出形状为(6,1)
[[1]
[2]
[3]
[4]
[5]
[6]]
Out[10]:
(6, 1)

二 . np.hstack:按水平方向(列顺序)堆叠数组构成一个新的数组

In[11]:
a = np.array([[1,2,3]])
a.shape
Out[11]:
(1, 3) In [12]:
b = np.array([[4,5,6]])
b.shape
Out[12]:
(1, 3) In [16]:
c = np.hstack((a,b)) # 将两个(1,3)形状的数组按水平方向叠加
print(c)
c.shape # 输出形状为(1,6)
[[1 2 3 4 5 6]]
Out[16]:
(1, 6) In [17]:
a = np.array([[1],[2],[3]])
a.shape
Out[17]:
(3, 1)
In [18]:
b = np.array([[4],[5],[6]])
b.shape
Out[18]:
(3, 1)
In [19]:
c = np.hstack((a,b)) 将两个(3,1)形状的数组按水平方向叠加
print(c)
c.shape # 输出形状为(3,2)
[[1 4]
[2 5]
[3 6]]
Out[19]:
(3, 2)

三 .  numpy.ndarray.flat/flatten

1. flat返回的是一个迭代器,可以用for访问数组每一个元素

import numpy as np
a = np.arange(4).reshape(2,2)
print(a)
for i in a.flat:
print(i)
#迭代器可以用list进行输出
print(list(a.flat))
print(type(a.flat))#返回类型为 numpy.flatiter
#可以用索引对迭代器进行引号
a.flat[3]
#输出:
[[0 1]
[2 3]]
0
1
2
3
[0, 1, 2, 3]
<class 'numpy.flatiter'>
3

2. ndarray.flatten(order=’C’)

Return a copy of the array collapsed into one dimension.
将数组的副本转换为一维,并返回

可选参数,order:{‘C’,‘F’,‘A’,‘K’}

    • ‘C’:C-style,行序优先
    • ‘F’:Fortran-style,列序优先
    • ‘A’:if a is Fortran contiguous in memory ,flatten in column_major order
    • ‘K’:按照元素在内存出现的顺序进行排序
      默认为’C’
a = np.array([[4,5],[4,9]])
#默认按行转换
b= a.flatten()
print(b)
#换成列来划分
c = a.flatten('F')
print(c)
[4 5 4 9]
[4 4 5 9]

Numpy:np.vstack()&np.hstack() flat/flatten的更多相关文章

  1. numpy中数据合并,stack ,concentrate,vstack,hstack

    在python的numpy库中有一个函数np.stack(), 看过一些博文后觉得别人写的太复杂,然后自己有了一些理解之后做了一些比较简单的解释 np.stack 首先stack函数用于堆叠数组,其调 ...

  2. [转]numpy中数据合并,stack ,concentrate,vstack,hstack

    转自:https://www.cnblogs.com/onemorepoint/p/9541761.html 在python的numpy库中有一个函数np.stack() np.stack 首先sta ...

  3. np.vstack()和np.hstack()

    本文链接:https://blog.csdn.net/m0_37393514/article/details/79538748在这里我们介绍两个拼接数组的方法: np.vstack():在竖直方向上堆 ...

  4. np.hstack和np.vstack

    np.vstack:按垂直方向(行顺序)堆叠数组构成一个新的数组 In[3]: import numpy as np In[4]: a = np.array([[1,2,3]]) a.shape Ou ...

  5. 【转】python中numpy模块下的np.clip()的用法

    转自:https://blog.csdn.net/HHTNAN/article/details/79799612 Numpy 中clip函数的使用 一维数组 其中a是一个数组,后面两个参数分别表示最小 ...

  6. numpy 常用工具函数 —— np.bincount/np.average

    numpy 常用工具函数 —— np.bincount/np.average numpy 常用api(一) numpy 常用api(二) 一个函数提供 random_state 的关键字参数(keyw ...

  7. h5py报错:FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type`.

    导入h5py的时候,报错: /home/harris/anaconda3/lib/python3.6/site-packages/h5py/__init__.py:36: FutureWarning: ...

  8. 区分range() , np.arange() , np.linspace()

    content: range() np.arange() np.linspace() 一.range(start, stop, step) 1.range() 为 python 自带函数 2.生成一个 ...

  9. NumPy:数组计算

    一.MumPy:数组计算 1.NumPy是高性能科学计算和数据分析的基础包.它是pandas等其他各种工具的基础.2.NumPy的主要功能: ndarray,一个多维数组结构,高效且节省空间 无需循环 ...

随机推荐

  1. Spring 学习记录2 Environment

    Environment是什么 environment是什么呢....中文是环境大家都知道但是具体代表什么呢?感觉很抽象....从代码里的解释来看environment代表了profile和proper ...

  2. 深入浅出谈数据挖掘zz

    编者的话:本文对数据挖掘概念的产生,数据挖掘与常规数据分析的主要区别,所能解决的几大类问题和所应用的领域都有着非常清晰的论述.作者在此篇文章中认为数据挖掘最重要的要素是分析人员的相关业务知识和思维模式 ...

  3. PHPCMS V9 模块开发 二次开发实例 留言本

    鄙人实现了PHPCMS V9 产品开发权威指南(2011官方最新版).doc中的留言板实例,并加上模块安装和卸载功能, 程序可以运行,但只实现基本功能,目的是想让和我一样徘徊在PHPCMS门口不知道从 ...

  4. .net 分布式架构之分布式锁实现(转)

    分布式锁是控制分布式系统之间同步访问共享资源的一种方式.在分布式系统中,常常需要协调他们的动作.如果不同的系统或是同一个系统的不同主机之间共享了一个或一组资源,那么访问这些资源的时候,往往需要互斥来防 ...

  5. UIWebview与js交互[转]

    UIWebView是iOS最常用的SDK之一,它有一个stringByEvaluatingJavaScriptFromString方法可以将javascript嵌入页面中,通过这个方法我们可以在iOS ...

  6. Forward团队-爬虫豆瓣top250项目-模块测试过程

    我所做的模块不需要测试,但在后续其他人编写代码的时候,我需要对网页源码进行进一步的规范,然后指导别人在网页源码中的标签用法.

  7. 快速排序(Quicksort)的Javascript实现(转载)

    日本程序员norahiko,写了一个排序算法的动画演示,非常有趣. 这个周末,我就用它当做教材,好好学习了一下各种排序算法. 排序算法(Sorting algorithm)是计算机科学最古老.最基本的 ...

  8. polymer-developer guide-registration and lifecycle

    注册和声明周期 my = Polymer({ is: "proto-element", created: function() { this.innerHTML = 'create ...

  9. C的打印输出格式

    #include<stdio.h> int main() { float test1=12.3224356546565461-0.1; int test2=13; char test3[] ...

  10. php的循环与引用的一个坑

    上代码 $arr = array( 'a'=> 'a11', 'b'=> 'b22', 'c'=> 'c33', ); foreach ($arr as $k=>&$v ...