matlab删除某行,工作表直接操作
某列全部行赋固定值
A(:,5) ==1
创建某列用于给全部行编号
for i = 1:column
reco_data_wrj(i,1)==i
end
获取矩阵大小
[m,n]=size(a)
matlab输出很奇怪,和表上不一致,有可能是输出格式的错误
format short g | 总共有5个数字,可以用科学记数法,也可不用 |
解决方案详细MATLAB 显示输出数据的三种方式_飞羽的博客-CSDN博客_matlab print
数值型保留指定位数
.数值型 roundn—任意位位置四舍五入 >>a=123.4567890; >>a=roundn(a,-4) a = 123.4568 |
把matlab表格里的数据每一行作为元素全部存入数组,可以使用循环,向现有数组末尾增加新行(元素)
data = [reco_data(1,:);reco_data(2,:)]
for i=(3:5)#添加3到5行的数据进去作为新元素
temp=data
data=[temp;reco_data_wrj(i,:)]
end
删除列
>> A(:,2)=[]
A =
1 3
7 9
删除行
>> A(2,:)=[]
A =
1 2 3
7 8 9
创建一维矩阵作为正确分类答案
target=ones(1,c)
target(1,c)=2 #创建一个c列的一维数据,第c列为2其他为0
target(:,:)=2 #target全部元素赋值为2
数组拼接
matlab中,行拼接用逗号“;”,列拼接用分号“,”。示例如下:
>> a=[1,2,3,4]
结果:
a =
1 2 3 4
>> b=[1;2;3;4]
结果:
b =
1
2
3
4
>>c=[1,2,3,4;5,6,7,8;9,10,11,12;13,14,15,16]
结果:
c =
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
>>d=[a;c] %行拼接
结果:
d =
1 2 3 4
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
>> e=[b,c] %列拼接
结果:
e =
1 1 2 3 4
2 5 6 7 8
3 9 10 11 12
4 13 14 15 16
向量转置
使用矩阵转置运算符
逗号'
运算符用来对矩阵进行共轭转置;行向量和列向量都是矩阵的特殊形式,所以可以使用'
直接进行转置
使用 transpose() 函数
transpose() 函数用来对矩阵进行转置
矩阵输出成csv表格,用writetable函数
writetable(radar,'D:\dataset\radar_target_data\radar.csv')
报错:未定义与 'double' 类型的输入参数相对应的函数 'write'。
没解决这个问题,最后用csvwrite('D:\dataset\radar_target_data\radar.csv',radar)导出csv
csv文件有了,然后发现人家Iris数据集有个load_iris函数,哎,今天先到这里吧
机器学习-sklearn.datasets-load_iris数据集-回归算法和K近邻法(KNN)_博o_Oer~的博客-CSDN博客