numpy实现合并多维矩阵、list的扩展方法

yipeiwu_com7年前Python基础

一、合并多个numpy矩阵

1、首先创建两个多维矩阵

矩阵a的大小为(2,3,2)

矩阵b的大小为(3,2,3)

采用concatentate这个函数就可以合并两个多维矩阵

合并之后应为(5,3,2)

In [1]: import numpy as np
In [2]: a = np.ndarray((3, 2, 3))
In [3]: b = np.ndarray((2, 2, 3))
In [4]: print(a.shape, b.shape)
(3, 2, 3) (2, 2, 3)
In [5]: c = np.concatenate((a, b), axis = 0)
In [6]: print(c.shape)
(5, 2, 3)
In [7]: 

二、矩阵的追加

矩阵的追加是采用append这个函数,list也有这个函数,但是二者的使用方式略有不同。

1、创建一个ndarray

2、然后使用np.append()函数进行追加(注意是np.append, 不是a.append)

In [2]: import numpy as np
In [3]: a = np.array([1, 2, 3, 4, 5])
In [4]: a = np.append(a, 10)
In [5]: a
Out[5]: array([ 1, 2, 3, 4, 5, 10])
In [6]: a = np.append(a, [1, 2, 3])
In [7]: a
Out[7]: array([ 1, 2, 3, 4, 5, 10, 1, 2, 3])

三、列表的扩展(extend)

1、列表的扩展就是把两个列表合并

2、采用extend函数

In [9]: a = [1, 2, 3, 4]
In [10]: b = [5, 6, 7, 8]
In [11]: a
Out[11]: [1, 2, 3, 4]
In [12]: b
Out[12]: [5, 6, 7, 8]
In [13]: c = a.extend(b)
In [14]: c
In [15]: a
Out[15]: [1, 2, 3, 4, 5, 6, 7, 8]

请注意extend这个函数的返回值是None,所以上面第13行c的输出为空,而a的值已经变了,所以它是直接在a后面扩展的,并没有任何返回值。

四、列表的追加

列表的追加直接用append就行

1、创建列表a

2、在a的后面追加数据

In [28]: a = [1, 2,3,4]
In [29]: a.append(6)
In [30]: a
Out[30]: [1, 2, 3, 4, 6]
In [31]: 

以上这篇numpy实现合并多维矩阵、list的扩展方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python脚本实现集群检测和管理功能

Python脚本实现集群检测和管理功能

场景是这样的:一个生产机房,会有很多的测试机器和生产机器(也就是30台左右吧),由于管理较为混乱导致了哪台机器有人用、哪台机器没人用都不清楚,从而产生了一个想法--利用一台机器来管理所有...

Selenium(Python web测试工具)基本用法详解

Selenium(Python web测试工具)基本用法详解

本文实例讲述了Selenium基本用法。分享给大家供大家参考,具体如下: Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作...

pandas DataFrame 根据多列的值做判断,生成新的列值实例

pandas DataFrame 根据多列的值做判断,生成新的列值实例

环境:Python3.6.4 + pandas 0.22 主要是DataFrame.apply函数的应用,如果设置axis参数为1则每次函数每次会取出DataFrame的一行来做处理,如...

Python减少循环层次和缩进的技巧分析

Python减少循环层次和缩进的技巧分析

本文实例分析了Python减少循环层次和缩进的技巧。分享给大家供大家参考,具体如下: 我们知道Python中冒号和缩进代表大括号,这样写已经可以节省很多代码行数,但是可以更优化,尽可能减...

python3+PyQt5泛型委托详解

python3+PyQt5泛型委托详解

自定义委托可以让我们对视图中出现的数据项的外观和行为进行完全控制。如果有很多模型,可能会希望不是全部的大多数模型能够仅用一个自定义委托,如果不能这么做,那么对于这些自定义委托,将很有可能...