matlab与python中reshape函数的区别

一直以为两者是一样的,直到最近发现自己用python画的台站波形和师兄给的matlab代码画的完全不一样,读取的文件都是一样的。结果图画出来差的离谱,在这里记录一下,自己踩过的坑。

matlab中的 reshape

在一维数据转二维的时候,matlab是以列为优先的,比如一个一维数据如下:

如上可以看出,matlab在进行reshape的时候,是一列一列填充来的,在上图中,把数组a reshape成3行4列的数据的时候可以看到,先取出前三个数字1,2,3填充第一列,在取后面是三个填充第二列,以此类推对数据进行二维重组。

python中的reshape

在一维数据转二维的时候,python是以行为优先的,比如一个一维数据如下:

如上可以看出,python在进行reshape的时候,是一行一行来填充的,将数据reshape成三行四列的数据的时候,先取前四个数据1,2,3,4填充第一行,然后取后面四个填充第二行,之后第三行,以此类推对数据进行重组。

总结

由于研究需要,自己平时使用的代码需要在matlab和python之间进行切换,有时一个小细节不注意可能会造成很严重的错误,比如这个reshape,所以基础功还是要打扎实!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值