📅  最后修改于: 2020-06-10 04:35:23             🧑  作者: Mango
numpy.ravel(array, order = ‘C’) : 返回连续的扁平化数组(具有所有输入数组元素且类型相同的一维数组)。仅在需要时才进行复制。
参数:
array:[array_like]输入数组。
order:[C连续,F连续,A连续;可选的]内存中的C连续顺序(最后一个索引变化最快)C顺序表示阵列上的行上升操作将更快内存中的FORTRAN连续顺序(第一个索引变化最快)。F顺序表示逐列运算将更快。如果“ A”表示以类似于Fortran的索引顺序读取/写入元素,数组在内存中是连续的Fortran,否则为类C顺序
返回:
展平的数组,其类型与输入数组相同,并且根据选择具有和顺序。
代码1:显示array.ravel等效于reshape(-1,order = order)
# Python程序说明numpy.ravel()方法
import numpy as geek
array = geek.arange(15).reshape(3, 5)
print("原始数组 : \n", array)
# Outpue像[0 1 2 ...,12 13 14]一样,因为它是长输出,因此它是在Python中显示outptut的方式
print("\nravel() : ", array.ravel())
# 这表明array.ravel等效于reshape(-1,order = order)。
print("\nnumpy.ravel() == numpy.reshape(-1)")
print("重塑数组 : ", array.reshape(-1))
输出:
原始数组:
[[0 1 2 3 4]
[5 6 7 8 9]
[10 11 12 13 14]]
ravel():[0 1 2 ...,12 13 14]
numpy.ravel()== numpy .reshape(-1)
重塑数组:[0 1 2 ...,12 13 14]
代码2:显示的order操作
# Python Program illustrating
# numpy.ravel() method
import numpy as geek
array = geek.arange(15).reshape(3, 5)
print("原始数组 : \n", array)
# Outpue comes like [ 0 1 2 ..., 12 13 14]
# as it is a long output, so it is the way of
# showing outptut in Python
# About :
print("\n关于numpy.ravel() : ", array.ravel)
print("\nnumpy.ravel() : ", array.ravel())
# 同时保持“ A"和“ F"顺序
print("\n维持 A Order : ", array.ravel(order = 'A'))
# 保留顺序“ K"的K顺序表示既不是“ A"也不是“ F"
array2 = geek.arange(12).reshape(2,3,2).swapaxes(1,2)
print("\narray2 \n", array2)
print("\n维持A order : ", array2.ravel(order = 'K'))
输出:
原始数组:
[[0 1 2 3 4]
[5 6 7 8 9]
[10 11 12 13 14]]
关于numpy.ravel():
numpy.ravel():[0 1 2 ...,12 13 14 ]
维持A order:[0 1 2 ...,12 13 14]
array2
[[[0 2 4]
[1 3 5]]
[[6 8 10]
[7 9 11]]]
维持A order:[0 1 2 ...,9 10 11]