- 积分
- 26287
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2012-3-17
- 最后登录
- 1970-1-1
|

楼主 |
发表于 2013-5-5 13:10:35
|
显示全部楼层
mast2535 发表于 2013-5-5 00:53
谢谢!还有个问题,我的数据是一个点的风的U、V风量随高度和时间的分布,没有经纬度,怎样转成你所说的按经 ...
用reshape函数,按要求reshape(变量,[经度数,纬度数,层次数,时次数])就可以处理了。
但这里提出注意matlab中第一维是列,所以在reshape的时候matlab会把数据按列开始抻成一维,然后再按你的要求一组一组取维形成你要求的数组。例如你的例子U=[1 2 3 4;5 6 7 8]在reshape的时候会先变成[1 5 2 6 3 7 4 8],然后按你要求取维形成数组。我们存取方式应该是经、纬、层次、时次顺序的,所以直接对U进行reshape成[1,1,4(层次维数),2(时次维数)]的话,U(1,1,2,1)的话就不是我们应该要取第二层第一个时次的数据2,而是5,这里按照你的要求应该要先对U转置,让它变成[1 2 3 4 5 6 7 8]这样按经、纬、层次、时次顺序增加的向量以后再reshape就行了。
废话有点多,不知道你听懂没有~ |
|