python创建一个数组并返回reshape数组,Python Numpy MaskedArray.reshape()用法及代码示例...

本文介绍了numpy.MaskedArray.reshape()函数,该函数用于在不改变数据的情况下为掩码数组赋予新的形状。通过示例代码展示了如何将一维和三维掩码数组重塑为二维和一维数组,强调了重塑过程中对原始数据的视图操作以及参数order的用法。
摘要由CSDN通过智能技术生成

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]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值