numpy matlab 索引不同,与Numpy相似的MATLAB数组索引

这篇博客讨论了MATLAB和Numpy中数组索引的不同行为。在MATLAB中,数组索引选择指定的行和列,而在Numpy中,索引则会“拉链”两个数组创建新的元素序列。举例说明了这种差异,并提出了如何在Numpy中模拟MATLAB的索引方式。
摘要由CSDN通过智能技术生成

参见英文答案 >

Subsetting a 2D numpy array                                    4个

在MATLAB和Numpy中,数组可以由数组索引.但是,行为是不同的.让我以一个例子来解释一下.

MATLAB:

>> A = rand(5,5)

A =

0.1622 0.6020 0.4505 0.8258 0.1067

0.7943 0.2630 0.0838 0.5383 0.9619

0.3112 0.6541 0.2290 0.9961 0.0046

0.5285 0.6892 0.9133 0.0782 0.7749

0.1656 0.7482 0.1524 0.4427 0.8173

>> A([1,3,5],[1,3,5])

ans =

0.1622 0.4505 0.1067

0.3112 0.2290 0.0046

0.1656 0.1524 0.8173

NumPy的:

In [2]: A = arange(25).reshape((5,5))

In [3]: A

Out[3]:

array([[ 0, 1, 2, 3, 4],

[ 5, 6, 7, 8, 9],

[10, 11, 12, 13, 14],

[15, 16, 17, 18, 19],

[20, 21, 22, 23, 24]])

In [6]: A[[0,2,4], [0,2,4]]

Out[6]: array([ 0, 12, 24])

简单来说:MATLAB选择行和列,Numpy“拉链”两个索引数组,并使用元组指向条目.

如何使用Numpy获取MATLAB的行为?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值