因为要作的项目中涉及到数据处理,初涉及到matlab。今天须要把一组只用空格分开的数据读取到一个三维矩阵,而后对这个矩阵进行处理。数组
思路是:首先用importdata读入txt文件,造成一个一行N列的矩阵(N是数据个数),接下来经过size计算出矩阵的大小,其实也就是计算出数据的个数,而后算出一个K值,K=N/M(M是要造成的新矩阵的维数)接下来用reshape函数对于这个矩阵进行转换,转换成想要的规格(K行M列),这个地方要注意了,matlab读取数据是按照列的方向进行读取,因此咱们这个时候要造成的是一个M行K列的矩阵,而后对这个矩阵进行转置才能获得咱们想要的矩阵,如下是源码,例子中我要把数据转换成一个三维矩阵。函数
A=importdata('data.txt');//读取txt文件到数组A中源码
[m,n]=size(A);//计算A的大小,此时m=1,n=数据个数class
k=n/3;//计算出要造成新矩阵的行数用 总数据个数/新矩阵维数,本例中,M=3import
B=reshape(A,3,k);//将A矩阵转换成3行K列的新矩阵im
C=B';//C矩阵为K行三列,就是最后要求的矩阵数据