Python使用numpy模块实现矩阵和列表的连接操作方法


Posted in Python onJune 26, 2019

Numpy模块被广泛用于科学和数值计算,自然有它的强大之处,之前对于特征处理中需要进行数据列表或者矩阵拼接的时候都是自己写的函数来完成的,今天发现一个好玩的函数,不仅好玩,关键性能强大,那就是Numpy模块自带的矩阵、列表连接函数,实践一下。

#!usr/bin/env python
#encoding:utf-8
from __future__ import division
 
'''
__Author__:沂水寒城
使用numpy模块实现矩阵的连接操作
'''
 
import numpy as np
 
def simple_test():
  '''
  简单的小实验
  '''
  sim_one,sim_two=[1,5,8,0,3,6],[11,5,8,0,3]
  one_list=[[1,2,3],[1,2,1],[3,4,5],[4,5,6]]
  two_list=[[5,6,7],[6,7,8],[6,7,9],[0,4,7],[4,6,0],[2,9,1],[5,8,7],[9,7,8],[3,7,9]]
  three_list=[[0,4,3,7],[4,6,1,0],[2,5,9,1]]
  three_list=np.array(three_list)
  four_list=[[2,9,1],[5,8,7],[9,7,8],[3,7,9]]
  print '对一维列表连接结果为:'
  pring np.concatenate([sim_one,sim_two],axis=0)
  print '对两个矩阵按行连接结果为:'
  print np.concatenate([one_list,two_list],axis=0)
  print '对两个矩阵按列连接结果为:'
  print np.concatenate([one_list,three_list.T],axis=1)
  print np.concatenate([one_list,four_list],axis=1)
 
 
if __name__ == '__main__':
  simple_test()

结果如下:

[Decode error - output not utf-8]
[Decode error - output not utf-8]
[ 1 5 8 0 3 6 11 5 8 0 3]
对两个矩阵按行连接结果为:
[[1 2 3]
 [1 2 1]
 [3 4 5]
 [4 5 6]
 [5 6 7]
 [6 7 8]
 [6 7 9]
 [0 4 7]
 [4 6 0]
 [2 9 1]
 [5 8 7]
 [9 7 8]
 [3 7 9]]
对两个矩阵按列连接结果为:
[[1 2 3 0 4 2]
 [1 2 1 4 6 5]
 [3 4 5 3 1 9]
 [4 5 6 7 0 1]]
[[1 2 3 2 9 1]
 [1 2 1 5 8 7]
 [3 4 5 9 7 8]
 [4 5 6 3 7 9]]
[Finished in 0.5s]

np.concatenate()函数中,第一个参数为待合并的矩阵、列表,第二个参数为0则表示是按照行连接数据,为1则表示是按照列连接数据。

从上面结果可以看到对于一维列表,axis参数可以省略,对于二维列表当axis为0时也可以省略

当axis为1时,需要注意被连接的数据矩阵行数列数需要相同才行,否则会报错:

AttributeError: 'list' object has no attribute 'T'

即,当axis为1时,本质上就是将矩阵以行为基准对应行的数据直接连接即可

当axis为1时,本质上就是将矩阵以列为基准将数据以此向下堆放在一起即可

以上这篇Python使用numpy模块实现矩阵和列表的连接操作方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
pytorch 数据集图片显示方法
Jul 26 Python
Python多进程原理与用法分析
Aug 21 Python
python3正则提取字符串里的中文实例
Jan 31 Python
python3 字符串/列表/元组(str/list/tuple)相互转换方法及join()函数的使用
Apr 03 Python
Django用户认证系统 组与权限解析
Aug 02 Python
Python简易版图书管理系统
Aug 12 Python
Python线程threading模块用法详解
Feb 26 Python
Python对称的二叉树多种思路实现方法
Feb 28 Python
keras实现图像预处理并生成一个generator的案例
Jun 17 Python
编写python代码实现简单抽奖器
Oct 20 Python
python BeautifulSoup库的安装与使用
Dec 17 Python
Python 实现劳拉游戏的实例代码(四连环、重力四子棋)
Mar 03 Python
Python 实现交换矩阵的行示例
Jun 26 #Python
对numpy下的轴交换transpose和swapaxes的示例解读
Jun 26 #Python
Python用Try语句捕获异常的实例方法
Jun 26 #Python
python调用自定义函数的实例操作
Jun 26 #Python
python读取并定位excel数据坐标系详解
Jun 26 #Python
python分数表示方式和写法
Jun 26 #Python
python字符串替换第一个字符串的方法
Jun 26 #Python
You might like
php上传apk后自动提取apk包信息的使用(示例下载)
2013/04/26 PHP
smarty模板引擎之配置文件数据和保留数据
2015/03/30 PHP
php生成gif动画的方法
2015/11/05 PHP
php从身份证获取性别和出生年月
2017/02/09 PHP
Extjs TriggerField在弹出窗口显示不出问题的解决方法
2010/01/08 Javascript
input按钮的事件处理大全
2010/12/10 Javascript
JavaScript实现查找字符串中第一个不重复的字符
2014/12/29 Javascript
NodeJS使用jQuery选择器操作DOM
2015/02/13 NodeJs
JavaScript Window浏览器对象模型方法与属性汇总
2015/04/20 Javascript
node.js 抓取代理ip实例代码
2017/04/30 Javascript
javascript简单链式调用案例分析
2017/05/10 Javascript
[01:04:09]DOTA2-DPC中国联赛 正赛 iG vs VG BO3 第二场 2月2日
2021/03/11 DOTA
在Python的循环体中使用else语句的方法
2015/03/30 Python
简单介绍使用Python解析并修改XML文档的方法
2015/10/15 Python
解决Python安装后pip不能用的问题
2018/06/12 Python
Django Rest framework解析器和渲染器详解
2019/07/25 Python
Python二维数组实现求出3*3矩阵对角线元素的和示例
2019/11/29 Python
Python实现进度条和时间预估的示例代码
2020/06/02 Python
Python3.8安装Pygame教程步骤详解
2020/08/14 Python
Flask中jinja2的继承实现方法及实例
2021/03/03 Python
购买美国制造的相框和画框架:Picture Frames
2018/08/14 全球购物
丝芙兰加拿大官方网站:SEPHORA加拿大
2018/11/20 全球购物
澳大利亚儿童精品仓库:Goo & Co.
2019/06/20 全球购物
介绍一下Make? 为什么使用make
2013/12/08 面试题
个人简历中自我评价
2014/02/11 职场文书
党员党性分析材料
2014/02/17 职场文书
三查三看党性分析材料
2014/02/18 职场文书
创先争优承诺书范文
2014/03/31 职场文书
爱心捐书活动总结
2014/07/05 职场文书
学校党委干部个人对照检查材料思想汇报
2014/10/09 职场文书
银行贷款委托书范本
2014/10/11 职场文书
党的群众路线教育实践活动个人对照检查材料(校长)
2014/11/05 职场文书
2015年质量管理工作总结范文
2015/05/18 职场文书
教研活动主持词
2015/07/03 职场文书
Python中非常使用的6种基本变量的操作与技巧
2022/03/22 Python
Redis官方可视化工具RedisInsight安装使用教程
2022/04/19 Redis