Numpy基础2(改变数组的形状(维度)、数组的组合和分割)

1 改变数组形状

# 创建一维数组
arr = np.arange(12)
print("创建的一维数组arr为:",arr)
			创建的一维数组arr为: [ 0  1  2  3  4  5  6  7  8  9 10 11]
arr_new = arr.reshape(3,4)
print("新的一维数组arr_new为:",arr_new)
			新的一维数组arr_new为: [[ 0  1  2  3]
								 [ 4  5  6  7]
								 [ 8  9 10 11]]
arr_new_ravel = arr_new.ravel()
print("使用ravel展平新的一维数组arr_new后:",arr_new_ravel)
			使用ravel展平新的一维数组arr_new后: [ 0  1  2  3  4  5  6  7  8  9 10 11]
arr_new_flatten = arr_new.flatten()
print("使用flatten横向展平新的一维数组arr_new后:",arr_new_flatten)
			使用flatten横向展平新的一维数组arr_new后: [ 0  1  2  3  4  5  6  7  8  9 10 11]
arr_new_flatten_F = arr_new.flatten("F")
print("使用flatten纵向展平新的一维数组arr_new后:",arr_new_flatten_F)
			使用flatten纵向展平新的一维数组arr_new后: [ 0  4  8  1  5  9  2  6 10  3  7 11]

2 组合数组

# 创建两个数组
arr1 = np.arange(12).reshape(3,4)
				arr1: 	[[ 0  1  2  3]
					 	[ 4  5  6  7]
 						[ 8  9 10 11]]
arr2 = np.arange(9).reshape(3,3)
print("使用hstack函数实现数组横向组合arr1、arr2后:",np.hstack((arr1,arr2)))
			使用hstack函数实现数组横向组合arr1、arr2后: [[ 0  1  2  3  0  1  2]
													 [ 4  5  6  7  3  4  5]
													 [ 8  9 10 11  6  7  8]]
arr3 = arr1.reshape(4,3)
print("使用vstack函数实现数组纵向组合arr3、arr2后:",np.vstack((arr3,arr2)))					
			使用vstack函数实现数组纵向组合arr3、arr2后: [[ 0  1  2]
													 [ 3  4  5]
													 [ 6  7  8]
													 [ 9 10 11]
													 [ 0  1  2]
													 [ 3  4  5]
													 [ 6  7  8]]
print("使用concatenate函数实现数组横向组合",np.concatenate((arr1,arr2),axis=1))
			使用concatenate函数实现数组横向组合 [[ 0  1  2  3  0  1  2]
											[ 4  5  6  7  3  4  5]
											[ 8  9 10 11  6  7  8]]
print("使用concatenate函数实现数组纵向组合",np.concatenate((arr3,arr2),axis=0))
			使用concatenate函数实现数组纵向组合 [[ 0  1  2]
											 [ 3  4  5]
											 [ 6  7  8]
											 [ 9 10 11]
											 [ 0  1  2]
											 [ 3  4  5]
						 					 [ 6  7  8]]

3 切割数组

print("使用hsplit函数实现数组横向分割arr1成2列:",np.hsplit (arr1,2))      #竖着切
				使用hsplit函数实现数组横向分割arr1成2列: [array([[0, 1],   
      														 [4, 5],
      														 [8, 9]]),
      												 array([[ 2,  3],
       														 [ 6,  7],
      														 [10, 11]])]
print("使用vsplit函数实现数组纵向分割arr1成3行:",np.vsplit (arr1,3))   # 横着切 
				使用vsplit函数实现数组纵向分割arr1成3行: [array([[0, 1, 2, 3]]), array([[4, 5, 6, 7]]), array([[ 8,  9, 10, 11]])]
print("使用split函数实现数组横向分割arr1成2列:",np.split(arr1,2,axis=1))  # 竖着切
				使用split函数实现数组横向分割arr1成2列: [array([[0, 1],
													       [4, 5],
													       [8, 9]]), 
													 array([[ 2,  3],
													       [ 6,  7],
													       [10, 11]])]

更多相关推荐

python改变数组形状_NumPy数组的...

在机器学习以及深度学习的任务中,通常需要将处理好的数据以模型能接收的格式输入给模型,然后...

继续阅读

Numpy 改变数组维度的几种方法

来自《Python数据分析基础教程:Numpy学习指南(第2版)》Numpy改变数组维度的方法有:reshape...

继续阅读

numpy改变数组的维度

改变数组的维度ravelflatten函数完成展平的操作flatten函数会请求分配内存来保存结果,而ravel...

继续阅读

Numpy之改变数组维度

Numpy改变数组维度的常用方法1.reshape不会改变原始数组2.ravelravel用于将一个多维的数组展成...

继续阅读

python改变数组维度_Numpy 改变...

来自《Python数据分析基础教程:Numpy学习指南(第2版)》Numpy改变数组维度的方法有:reshape()...

继续阅读

matlab 改变数组形状,Numpy学习...

Numpy学习之更改数组形状更改数组形状的相关函数如下:x=np.array([1,2,3,4,5,6,7,8])print(x....

继续阅读

Numpy--改变数组维度

参考文章链接:https://blog.csdn.net/m0_37586991/article/details/79758168来自《Python数据...

继续阅读

python改变数组维度_如何在Pytho...

Ihaveanarraythatissize(214,144).Ineedittobe(214,144,1)isthereawaytodothiseasilyinPython?...

继续阅读

python进阶-09.改变数组维度,组...

importnumpyasnp文章目录存储数据读取文件numpy常用统计函数矩阵常见的随机函数np.random.choi...

继续阅读

python改变数组维度_python –...

我开始使用mxnxp数组A,In[16]:AOut[16]:array([[[2.10000000e+01,3.70060693e-01],[2.00000000...

继续阅读