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 相关文章推荐
python使用wxpython开发简单记事本的方法
May 20 Python
深入理解Python中的内置常量
May 20 Python
Python中实现最小二乘法思路及实现代码
Jan 04 Python
python 将数据保存为excel的xls格式(实例讲解)
May 03 Python
python multiprocessing模块用法及原理介绍
Aug 20 Python
利用Python小工具实现3秒钟将视频转换为音频
Oct 29 Python
Python使用微信接入图灵机器人过程解析
Nov 04 Python
Python多线程多进程实例对比解析
Mar 12 Python
python json.dumps中文乱码问题解决
Apr 01 Python
Python爬虫抓取指定网页图片代码实例
Jul 24 Python
Python根据字符串调用函数过程解析
Nov 05 Python
python使用matplotlib绘制图片时x轴的刻度处理
Aug 30 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
linux环境apache多端口配置虚拟主机的方法深入介绍
2013/06/09 PHP
解析php5配置使用pdo
2013/07/03 PHP
php网页版聊天软件实现代码
2016/08/12 PHP
PHP中通过getopt解析GNU C风格命令行选项
2019/11/18 PHP
setTimeout与setInterval在不同浏览器下的差异
2010/01/24 Javascript
JavaScript Event学习第八章 事件的顺序
2010/02/07 Javascript
读JavaScript DOM编程艺术笔记
2011/11/15 Javascript
JS中图片缓冲loading技术的实例代码
2013/08/29 Javascript
JS获取文本框,下拉框,单选框的值的简单实例
2014/02/26 Javascript
node.js中的buffer.toString方法使用说明
2014/12/14 Javascript
jQuery中next方法用法实例
2015/04/24 Javascript
详解JavaScript表单验证(E-mail 验证)
2016/03/31 Javascript
详解vue-router 2.0 常用基础知识点之router.push()
2017/05/10 Javascript
详解vue.js2.0父组件点击触发子组件方法
2017/05/10 Javascript
JQuery 获取Dom元素的实例讲解
2017/07/08 jQuery
Mint UI实现A-Z字母排序的城市选择列表
2018/12/28 Javascript
关于微信小程序登录的那些事
2019/01/08 Javascript
详解如何使用webpack打包多页jquery项目
2019/02/01 jQuery
layui添加动态菜单与选项卡 AJAX请求的例子
2019/09/25 Javascript
JavaScript实现网页下拉菜单效果
2020/11/20 Javascript
[44:39]2014 DOTA2国际邀请赛中国区预选赛 NE VS CNB
2014/05/21 DOTA
[36:14]DOTA2上海特级锦标赛D组小组赛#1 EG VS COL第二局
2016/02/28 DOTA
python爬虫入门教程--利用requests构建知乎API(三)
2017/05/25 Python
ubuntu系统下使用pm2设置nodejs开机自启动的方法
2018/05/12 NodeJs
python验证身份证信息实例代码
2019/05/06 Python
使用NumPy读取MNIST数据的实现代码示例
2019/11/20 Python
python 实现的车牌识别项目
2021/01/25 Python
澳大利亚第一的设计师礼服租赁网站:GlamCorner
2017/08/13 全球购物
比驿:全球酒店比价网
2018/06/20 全球购物
美国隐形眼镜网上商店:Lens.com
2019/09/03 全球购物
客服专员岗位职责范本
2013/11/29 职场文书
前处理组长岗位职责
2014/03/01 职场文书
调解协议书
2014/04/16 职场文书
艾滋病宣传活动总结
2014/05/08 职场文书
党性教育心得体会
2014/09/03 职场文书
Python3 类型标注支持操作
2021/06/02 Python