Python使用numpy模块实现矩阵和列表的连接操作
Numpy模块被广泛用于科学和数值计算,自然有它的强大之处,之前对于特征处理中需要进行数据列表或者矩阵拼接的时候都是自己写的函数来完成的,今天发现一个好玩的函数,不仅好玩,关键性能强大,那就是Numpy模块自带的矩阵、列表连接函数,实践一下。
#!usr/bin/env python
#encoding:utf-8
from __future__ import division'''
__Author__:沂水寒城
使用numpy模块实现矩阵的连接操作
'''import numpy as npdef 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安装numpy模块-python的numpy模块安装不成功简单解决方法总结
为了画个图,被numpy这个模块的安装真的折腾疯了!!!一直装不上,花了几个小时,看了网上的很多教程.方法发现总结得不是很全,这里总结一下,防止大家再出现这个问题没有解决方法. Python的魅力之一 ...
- 【机器学习入门笔记11:numpy模块实现矩阵的增删改查】20190217
2019-02-17 by 崔斐然 除了TensorFlow设置的矩阵之外,我们还可以通过numpy模块使用矩阵. 我们先在anaconda中参考笔记1中的配置方法安装numpy. 下面我们通过nu ...
- fun是什么意思 python中def_【python】 numpy中的矩阵转置(ndarray.T)为什么不加括号却可以实现方法的功能...
[python] numpy中的矩阵转置(ndarray.T)为什么不加括号却可以实现方法的功能 经过搜索和查询源码了解到,.T就是一个方法,但是是被装饰器修饰了一下... @property是pyt ...
- python numpy安装步骤-python的numpy模块安装不成功简单解决方法总结
为了画个图,被numpy这个模块的安装真的折腾疯了!!!一直装不上,花了几个小时,看了网上的很多教程.方法发现总结得不是很全,这里总结一下,防止大家再出现这个问题没有解决方法. Python的魅力之一 ...
- 自学Python第九天- 模块、包、编码、文件操作、OS 模块、打包
自学Python第九天- 模块.包.编码.文件操作.OS 模块.打包 模块 导入模块 程序入口 包 编码 文件操作 打开或创建文件 常用的文件打开模式 边读边写 文件对象的常用方法 读写 CSV Ex ...
- python中ndarray对象_学习python的第二十二天(numpy模块(对矩阵的处理,ndarray对象)
6.12自我总结 一.numpy模块 import numpy as np约定俗称要把他变成np 1.模块官方文档地址 2.创建矩阵 1.np.array import numpy as np #创建 ...
- [转载] Python之Numpy模块中的方法详解
参考链接: Python中的numpy.diag_indices Numpy(Numerical Python)是科学计算基础库,提供大量科学计算相关功能,比如数据统计,随机数生成等,其提供最核心类型 ...
- python安装numpy模块教程_Windows系统中安装Python模块pip numpy matplotlib
Windows系统中安装Python模块pip numpy matplotlib ]http://blog.csdn.net/guyuealian/article/details/52767125 一 ...
- python小白——进阶之路——day天-———列表的相关操作以及函数
###列表的相关操作 #(1)列表的拼接lst1=[1,2] lst2=[3,4] listvar = lst1+lst2 print(listvar) #(2)列表的重复lst = [1,2,3] ...
- Python安装numpy模块及pycharm配置
查看Python版本 查看可安装模块版本 安装 进入官网下载页找到相应的whl文件下载 https://pypi.python.org/pypi/numpy 文件放于F盘 安装 测试 未报错 pych ...
最新文章
- Python 是一门动态的、强类型语言
- java paint方法哪个周期调用_关于一段java程序的小问题,paint函数是什么时候执行的,没有调用啊...
- 【自动驾驶】16.计算机视觉:相机成像原理:世界坐标系、相机坐标系、图像坐标系、像素坐标系之间的转换
- 搜集侠采集织梦系统模板
- 解读clickhouse存算分离在华为云实践
- 前端开发~H5 ·学习笔记 ·001——【HTML介绍、常用HTML标签】
- D1格式是720*576还是704*576
- [转]“新欢乐时光”病毒源代码分析
- mysql分页查询公式
- html两个部分组成部分组成,html页面由哪几部分组成
- maya python 弹出窗口_Open Project Folder (python in maya)
- mysql new用法_MySQL触发器之 new 和 old 的理解
- 计算机建模和仿真实训报告,cad与cam实训报告范文3篇
- Android Studio实现多媒体播放器,音乐视频一体化
- 2,uniapp功能之—扫码(条形码,二维码)点击扫码或者pda侧边按钮扫码
- r安卡翻译成英文_WOW英文缩写翻译,新人必看!
- JAVA实验,求柱体面积
- 吴晓灵:大数据与个人征信市场发展
- VisionTransformer(三)BIT—— 基于孪生网络的变化检测结构分析
- 与ISV的生态合作?怎么弄?