当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python Numpy MaskedArray.reshape()用法及代码示例


numpy.MaskedArray.reshape()函数用于在不更改其数据的情况下为掩码数组赋予新的形状,它返回包含相同数据但具有新形状的掩码数组。结果是原始数组的视图;如果这不可能,则会引发ValueError。

用法: numpy.ma.reshape(shape, order)

参数:


shape:[int或int元组]新形状应与原始形状兼容。
order : [“ C”,“ F”,“ A”,“ K”,可选)默认情况下,使用“ C”索引顺序。
->使用此索引顺序读取a的元素。
->'C'表示以C-like顺序索引元素,最后一个轴索引更改最快,回到第一个轴索引更改最快。
->“ F”表示以Fortran-like索引顺序索引元素,第一个索引更改最快,最后一个索引更改最慢。
->'A'表示如果m在内存中是连续的,则以Fortran-like索引顺序读取元素,否则以C-like顺序读取元素。
->“ K”表示按顺序在内存中读取元素,但当步幅为负时反转数据。

返回:[reshaped_array]阵列上的新视图。

代码1:

# Python program explaining 
# numpy.MaskedArray.reshape() method  
    
# importing numpy as geek   
# and numpy.ma module as ma  
import numpy as geek  
import numpy.ma as ma  
    
# creating input array   
in_arr = geek.array([1, 2, 3, -1])  
print ("Input array : ", in_arr)  
    
# Now we are creating a masked array.  
# by making third entry as invalid.   
mask_arr = ma.masked_array(in_arr, mask =[1, 0, 1, 0])  
print ("Masked array : ", mask_arr)  
    
# applying MaskedArray.reshape methods to make   
# it a 2d masked array 
out_arr = mask_arr.reshape(2, 2)  
print ("Output 2D masked array : ", out_arr) 
输出:
Input array :  [ 1  2  3 -1]
Masked array :  [-- 2 -- -1]
Output 2D masked array :  [[-- 2]
 [-- -1]]

代码2:

# Python program explaining 
# numpy.MaskedArray.reshape() method  
    
# importing numpy as geek   
# and numpy.ma module as ma  
import numpy as geek  
import numpy.ma as ma  
    
# creating input array  
in_arr = geek.array([[[ 2e8, 3e-5]], [[ -45.0, 2e5]]]) 
print ("Input array : ", in_arr) 
     
# Now we are creating a masked array.  
# by making one entry as invalid.   
mask_arr = ma.masked_array(in_arr, mask =[[[ 1, 0]], [[ 0, 0]]])  
print ("3D Masked array : ", mask_arr)  
    
# applying MaskedArray.reshape methods to make   
# it a 2d masked array 
out_arr = mask_arr.reshape(1, 4)  
print ("Output 2D masked array : ", out_arr)  
print() 
  
# applying MaskedArray.reshape methods to make   
# it a 1d masked array 
out_arr = mask_arr.reshape(4, )  
print ("Output 1D masked array : ", out_arr)  
输出:
Input array :  [[[ 2.0e+08  3.0e-05]]

 [[-4.5e+01  2.0e+05]]]
3D Masked array :  [[[-- 3e-05]]

 [[-45.0 200000.0]]]
Output 2D masked array :  [[-- 3e-05 -45.0 200000.0]]

Output 1D masked array :  [-- 3e-05 -45.0 200000.0]


相关用法


注:本文由纯净天空筛选整理自jana_sayantan大神的英文原创作品 Numpy MaskedArray.reshape() function | Python。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。