第一次接触maltab代码编写,对于一些基础数据格式和操作函数不熟悉,汇总一下用过的数据格式以及操作函数。
作为一个新手用到的方法,很大概率不够简洁高效,能够快速达成目的就行~
(好的方法欢迎各位大佬赐教!!
包含内容:
· 使用一维向量临时保存数据
· 多组结果存为一个多维向量
· 获取数据不同维度的数据个数
· 导出数据,保存为csv或excel
需要一维数组保存for循环里面的处理结果:
r = [] %新建的一维向量
x = 5
r = [r x] %将x的值加入到向量尾部
此时,r值不再是空值,有了一个数值5
打印r,输出结果为:
r =
5
再次运行:r = [r x]
打印r,输出结果为:
r =
5 5
可以实现不断保存,类似于python的append()
多组一维向量结果存储到二维向量
result_all = [] %新建一个向量
b=[1 2 3]
result_all =[result_all b]
此时,result_all 是与b完全一样的向量
打印输出结果为:
result_all =
1 2 3
再次运行:result_all =[result_all b]
打印result_all ,输出结果为:
result_all =
1 2 3
1 2 3
该方法与一维向量尾端数据添加逻辑相同,适用于同维度的数据叠加。
二维数据叠加变成三维数据
用到的函数为cat()
例如:
result_1=
1 2 3
1 2 3
result_2 =
4 5 6
1 2 3
两个2X3的矩阵合并为三维数据
result_all=cat(3,result_1,result_2)
如果只是上下或者左右拼接可以写为:
result_all=cat(1,result_1,result_2)左右拼接 相当于 result_all=[result_1,result_2]
result_all=cat(2,result_1,result_2)上下拼接 相当于 result_all=[result_1;result_2]
获取多维数据的具体个数:
size(A)当A为三维矩阵时,会返回三个值
例如:
num =size(A)
输出为:
num =
60 2000 954
直接使用索引号,可以提取对应数值:
a3 = num(3) 提取第三个值
导出数据
查询到三个函数xlswrite(),writematrix(),csvwrite()。
csvwrite(filename,矩阵名称),报错,不推荐直接使用。推荐writematrix()
writematrix(矩阵名称,filename) %保存为csv文件
xlswrite(filename,矩阵名称) %保存为excel文件
例如:
xlswrite('C:\Desktop\data.xlsx',num)
writematrix(num,'C:\Desktop\data.xlsx')%一维/二维数据均可使用