永发信息网

matlab中冒号的问题

答案:2  悬赏:80  手机版
解决时间 2021-12-25 14:53
  • 提问者网友:人生佛魔见
  • 2021-12-25 10:16
请看句x=-5:5
这句到底取-5和5这2个点,还是取多个点。
源程序是这个

% example5_2.m
x=-5:5;
y=3*x-7; % 直线方程为
randn('state',2); % 设置种子,便于重复执行
y=y+randn(1,length(y))*1.5; % 加入噪声的直线
plot(x,y,'o');
P=x;T=y;
net=newlin(minmax(P),1,[0],maxlinlr(P)); % 用newlin创建线性网络
tic;net=train(net,P,T);toc % 训练。与newlind不同,newlin创建的网络需要调用训练函数
new_x=-5:.2:5;
new_y=sim(net,new_x); % 仿真
hold on;plot(new_x,new_y);
legend('原始数据点','最小二乘拟合直线');
title('newlin用于最小二乘拟合直线');
net.iw

% ans =
%
% [2.9219]

net.b

% ans =
%
% [-6.6797]
web -broswer http://www.ilovematlab.cn/forum-222-1.html

图却出现了11个点。怎么看
最佳答案
  • 五星知识达人网友:迟山
  • 2021-12-25 10:40
x=-5:5相当于x=-5:1:5,步长为1,共有-5,-4,-3,-2,-1,0,1,2,3,4,5,共11个
全部回答
  • 1楼网友:七十二街
  • 2021-12-25 10:59
显示a的第二行与第三行的第一、三、五列。因为矩阵后面如果是圆括号,那么 都表示引用,即矩阵元素的位置 ,下面是例子 a = 1 2 3 4 5 4 5 6 7 8 0 1 4 7 8 0 2 5 8 7 disp(a(2:3,1:2:5)) 4 6 8 0 4 8 补充问题:能解释下为什么是一,三,五列 matlab定义矩阵的一种方法是a=s:d:f,s表示起始值,d表示增量,f表示终点值,1:2:5即为1,1+2=3,3+2=5,不难理解吧,是matlab定义矩阵最常用的方法
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯