楼主: ffcxy2005
13345 8

[问答] 如何在matlab中实现多次循环 [推广有奖]

  • 7关注
  • 7粉丝

博士生

36%

还不是VIP/贵宾

-

威望
0
论坛币
2810 个
通用积分
3.2700
学术水平
8 点
热心指数
12 点
信用等级
7 点
经验
4433 点
帖子
131
精华
0
在线时间
351 小时
注册时间
2011-4-13
最后登录
2024-9-3

70论坛币
我想用已有的数据和拟合得到的方程在matlab里面采用多次循环语句,不知如何实现,请各位大大帮忙!
我的方程如下:
P(t)=1731.579+1.057*P(t-1)+5.539*G(t-1)*s/100;
G(t)=G(t-1)*(100+s)/100;
emp(t)=G(t)*10000/P(t);
下面表格里面的是已有的数据,t的取值范围在从1开始到5,且都是整数;想得到的是下一次运算结果中的P(t),G(t),emp(t),而每次运行的s值都是一样的,最后汇总的时候也想得到类似的表格,不知会不会很困难,还请各位帮忙!

regional

G(t-1)

s

P(t-1)

nj

142.29

5.44

27736.84

wx

104.94

2.76

46006.14

xz

282.82

3.33

17419.01

cz

99.78

4.01

35320.35

sz

155.79

2.63

55988.21

nt

266.22

3.64

32887.12

lyg

182.60

6.08

19843.51

ha

195.97

5.86

20764.33

yc

374.21

6.11

33797.87

yz

161.37

6.85

41894.96

zj

81.53

5.38

24034.55

tz

151.65

6.15

22617.45

sq

187.09

7.60

18826.89


关键词:MATLAB matla atlab Lab Atl matlab 如何
沙发
boat.wong 发表于 2012-8-1 10:17:17 |只看作者 |坛友微信交流群
不是很懂楼主意思,每次运行的s值都是一样的,怎么说?读取表格中的数据,好像t从1 到5循环得到数据不是很困难,直接用循环语句就可以的吧。

使用道具

藤椅
ffcxy2005 发表于 2012-8-1 12:40:19 |只看作者 |坛友微信交流群
boat.wong 发表于 2012-8-1 10:17
不是很懂楼主意思,每次运行的s值都是一样的,怎么说?读取表格中的数据,好像t从1 到5循环得到数据不是很困 ...
谢谢你的回答,每次运行的S值一样的意思是,在已有方程中,为了得到因变量的值,每次运行都需要一个S值,而我想直接以表格中的S值用在下一次的循环中。还有,因为在做项目,时间很短,以前几乎没接触过matlab,老板又要这个软件来做,所以没办法,只好求助于各位了!

使用道具

板凳
Xaero 发表于 2012-8-1 13:21:42 |只看作者 |坛友微信交流群
S=[1,2,3,4];  %先把所有值都保存在一个数组里面
for h=1:length(S) %循环,S中一共4个值,所以 h 就从1 到4 循环
result(h)=F(S(h)); %计算第h个S中的元素的值。
end %循环结束

所有结果都保存在result这个数组里面。
在Matlab的变量浏览器内可以把这些数据直接拷贝出来的。
十年一觉扬州梦。
智不足以Academy,才尚不够Industry,情无力于Life。

使用道具

报纸
ffcxy2005 发表于 2012-8-1 14:24:09 |只看作者 |坛友微信交流群
Xaero 发表于 2012-8-1 13:21
S=[1,2,3,4];  %先把所有值都保存在一个数组里面
for h=1:length(S) %循环,S中一共4个值,所以 h 就从1 到 ...
谢谢您的回答,您说的把所有值都保存在一个数组里面,可是如何才能求得我方程那些值呢,因为并不是只有S去循环,我想要用表格中的数据去计算P(t),G(t),emp(t),然后用算出来的这些值和S值去语句中循环,计算下一次的值。不知道我有没有表达清楚了,还请您再帮忙看一下,谢谢!

使用道具

地板
ffcxy2005 发表于 2012-8-1 14:25:24 |只看作者 |坛友微信交流群
Xaero 发表于 2012-8-1 13:21
S=[1,2,3,4];  %先把所有值都保存在一个数组里面
for h=1:length(S) %循环,S中一共4个值,所以 h 就从1 到 ...
还有个小疑问,是否可以直接将我这些数据存在excel中,然后去调用来写代码呢?

使用道具

7
Xaero 发表于 2012-8-1 19:06:42 |只看作者 |坛友微信交流群
当然可以的。
你说的这些,包括Excel都可以实现。
这些都是基础知识。建议自己看看书。
十年一觉扬州梦。
智不足以Academy,才尚不够Industry,情无力于Life。

使用道具

8
linzhang219 发表于 2012-8-3 12:49:04 |只看作者 |坛友微信交流群
ffcxy2005 发表于 2012-8-1 14:25
还有个小疑问,是否可以直接将我这些数据存在excel中,然后去调用来写代码呢?
可以用xlswrite吧数据存入excel中,用xlsread调入excel文件的内容。比如:[x,y,~]=xlsread('D:\Program Files\matlab\bin\PRACTICE\**.xls')。。。

使用道具

9
xin3315263 发表于 2012-11-22 16:20:28 |只看作者 |坛友微信交流群
你先用xlsread 读取表格的数据,然后再导入,建立M文件,用for 循环,,,

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-11-6 07:20