Python数据分析 知识量:13 - 56 - 232
数组的横向合并就是在行方向上进行简单的拼接。
可以使用concatenate()、hstack()和column_stack()函数中任意一个来实现拼接,但需要确保拼接的两个数组行数应当一致。
import numpy as np arr1=np.array([[1,2,3],[4,5,6],[7,8,9]]) arr2=np.array([[4,4],[5,5],[6,6]]) print("arr1:\n",arr1) print("arr2:\n",arr2) print('use np.concatenate():') arr3=np.concatenate([arr1,arr2],axis=1) print(arr3) print('use np.hstack():') arr3=np.hstack((arr1,arr2)) print(arr3) print('use np.column_stack():') arr3=np.column_stack((arr1,arr2)) print(arr3)
运行结果为:
arr1: [[1 2 3] [4 5 6] [7 8 9]] arr2: [[4 4] [5 5] [6 6]] use np.concatenate(): [[1 2 3 4 4] [4 5 6 5 5] [7 8 9 6 6]] use np.hstack(): [[1 2 3 4 4] [4 5 6 5 5] [7 8 9 6 6]] use np.column_stack(): [[1 2 3 4 4] [4 5 6 5 5] [7 8 9 6 6]]
如上所示,三种函数实现的效果是一样的,但是concatenate()函数需要通过axis指明合并方向,值为1时表示在行方向上进行合并。0表示在列方向上合并,在数组纵向合并时会用到。
数组的纵向合并就是在列方向上进行简单的拼接。
可以使用concatenate()、vstack()和row_stack()函数中任意一个来实现拼接,但需要确保拼接的两个数组列数应当一致。
import numpy as np arr1=np.array([[1,2,3],[4,5,6],[7,8,9]]) arr2=np.array([[4,4,4],[5,5,5]]) print('arr1:\n',arr1) print('arr2:\n',arr2) print('use np.concatenate():') arr3=np.concatenate([arr1,arr2],axis=0) print(arr3) print('use np.vstack():') arr3=np.vstack((arr1,arr2)) print(arr3) print('use np.row_stack():') arr3=np.row_stack((arr1,arr2)) print(arr3)
运行结果为:
arr1: [[1 2 3] [4 5 6] [7 8 9]] arr2: [[4 4 4] [5 5 5]] use np.concatenate(): [[1 2 3] [4 5 6] [7 8 9] [4 4 4] [5 5 5]] use np.vstack(): [[1 2 3] [4 5 6] [7 8 9] [4 4 4] [5 5 5]] use np.row_stack(): [[1 2 3] [4 5 6] [7 8 9] [4 4 4] [5 5 5]]
Copyright © 2017-Now pnotes.cn. All Rights Reserved.
编程学习笔记 保留所有权利
MARK:3.0.0.20240214.P35
From 2017.2.6