numpy系列之数组合并(横向和纵向)
作者:不思量自难忘 发布时间:2023-11-13 07:13:21
目录
1.横向合并
1.1 concatenate方法
1.2 hstack方法
1.3 column_stack方法
2.纵向合并
2.1 concatenate方法
2.2 vstack方法
2.3 row_stack方法
先新建两个数组用于合并
import numpy as np
arr1 = np.array([[1, 2, 3], [4, 5, 6]])
print(arr1)
result:
[[1 2 3]
[4 5 6]]
arr2 = np.array([[7, 8, 9], [10, 11, 12]])
print(arr2)
result:
[[ 7 8 9]
[10 11 12]]
1.横向合并
横向合并就是将两个行数相等的数组在行方向上进行简单拼接。与DataFrame合并不太一样,numpy数组合并不需要公共列,只是将两个数组简单拼接在一起,有concatenate、hstack、column_stack三种方法可以实现
1.1 concatenate方法
concatenate方法中将两个待合并的数组以列表的形式传递给concatenate,并通过设置axis参数指明在行方向还是列方向上进行合并。参数axis=1表示在数组在行方向上进行合并
print(np.concatenate([arr1, arr2], axis=1))
result:
[[ 1 2 3 7 8 9]
[ 4 5 6 10 11 12]]
1.2 hstack方法
hstack方法中将两个待合并的数组以元组的形式传递给hstack即可达到数组横向合并的目的
print(np.hstack((arr1, arr2)))
result:
[[ 1 2 3 7 8 9]
[ 4 5 6 10 11 12]]
1.3 column_stack方法
column_stack方法与hstack方法基本一致, 也是将两个待合并的数组以元组的形式传递给column_stack即可达到数组横向合并的目的
print(np.column_stack((arr1, arr2)))
result:
[[ 1 2 3 7 8 9]
[ 4 5 6 10 11 12]]
2.纵向合并
纵向合并是将两个列相等的数组在列方向上进行拼接,有concatenate、vstack、row_stack三种方法可以实现
2.1 concatenate方法
concatenate方法中将两个待合并的数组以列表的形式传递给concatenate,并通过设置axis参数指明在行方向还是列方向上进行合并。参数axis=0表示在数组在列方向上进行合并
print(np.concatenate([arr1, arr2], axis=0))
result:
[[ 1 2 3]
[ 4 5 6]
[ 7 8 9]
[10 11 12]]
2.2 vstack方法
vstack方法是与hstack方法相对应的方法,同样只要将两个待合并的数组以元组的形式传递给vstack即可达到数组纵向合并的目的
print(np.vstack((arr1, arr2)))
result:
[[ 1 2 3]
[ 4 5 6]
[ 7 8 9]
[10 11 12]]
2.3 row_stack方法
row_stack方法是与column_stack方法相对应的方法,同样只要将两个待合并的数组以元组的形式传递给row_stack即可达到数组纵向合并的目的
print(np.row_stack((arr1, arr2)))
result:
[[ 1 2 3]
[ 4 5 6]
[ 7 8 9]
[10 11 12]]
来源:https://juejin.cn/post/7000933929452568607


猜你喜欢
- 介绍An open source load testing tool.一个开源性能测试工具。define user behaviour wi
- mysql表索引被破坏的问题及解决下午上班,惊闻我的dedecms的网站出问题了,访问一看,果然全屏报错,检查mysql日志,错误信息为:
- 问题:在数据库脚本开发中,有时需要生成一堆连续数字或者日期,例如yearly report就需要连续数字做年份,例如daily report
- 解决的方法:1.在 ueditor\dialogs\internal.js 加入 document.domain = '根域名
- 创建测试dataframe:>>> import pandas as pd>>> df = pd.Dat
- 前言结构体是包含多个字段的集合类型,用于将数据组合为记录。这样可以将与同一实体相关联的数据利落地封装到一个轻量的类型定义中,然后通过对该结构
- 一、装饰器由于一个函数能实现一种功能,现在想要在不改变其代码的情况下,让这个函数进化一下,即能保持原来的功能,还能有新的"技能&q
- 在pycharm中设置python脚本的文件模板,让文件创建的时候就自动写上一些相关信息:1、进入pycharm的File->sett
- 本文实例讲述了python执行等待程序直到第二天零点的方法。分享给大家供大家参考。具体分析如下:如果需要通过python每天凌晨定时执行执行
- 本文实例讲述了Python面向对象class类属性及子类用法。分享给大家供大家参考,具体如下:class类属性class Foo(objec
- 随着网页制作热潮的兴起,Dreamweaver 4.0强大的功能深受众多网页制作者的喜爱。特别是Dreamweaver 4.0中有许多第三方
- 导语哈喽!大家好~我是木木子啦!自从写了一些表白类型的一些小脚本、小程序之后,越发不可收拾了,哈哈哈。常常会有小粉丝说:这......小程序
- 1 索引基础1.1 索引作用在MySQL中,查找数据时先在索引中找到对应的值,然后根据匹配的索引记录找到对应的数据行,假如要运行下面查询语句
- python协程线程和进程的操作是由程序触发系统接口,最后的执行者是系统;协程的操作则是程序员。协程存在的意义:对于多线程应用,CPU通过切
- 一,写在前面的话最近公司需要按天,按小时查看数据,可以直观的看到时间段的数据峰值。接到需求,就开始疯狂百度搜索,但是搜索到的资料有很多都不清
- 微信小程序获取位置信息的方式有两种,一种是调用微信官方的接口来获取,如getLocation,这种方式只能获取经纬度微信官方文档https:
- 本文实例讲述了Python嵌套函数,作用域与偏函数用法。分享给大家供大家参考,具体如下:内嵌函数(嵌套函数):意思:在函数里面再定义一个新的
- 本文实例讲述了JS设计模式之责任链模式。分享给大家供大家参考,具体如下:责任链设计模式:在责任链模式里,很多对象由每一个对象对其下家的引用而
- 这篇文章主要介绍了Python读取csv文件实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友
- 本文实例讲述了JS扩展方法实现技巧。分享给大家供大家参考。具体分析如下:JS扩展方法与C#的扩展方法非常相似,也是可以链式调用的,也是通过对