楼主: brufield
3456 7

求解一道题,在线等 [推广有奖]

  • 0关注
  • 0粉丝

学前班

80%

还不是VIP/贵宾

-

威望
0
论坛币
54 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
76 点
帖子
2
精华
0
在线时间
0 小时
注册时间
2007-1-19
最后登录
2014-5-6

楼主
brufield 发表于 2007-1-19 20:34:00 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
随机过程采用几何布朗运动,模拟100步,重复10000次的程序怎么写,用SAS,急,多谢!!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:在线等 布朗运动 随机过程 在线 求解

回帖推荐

sakunamary 发表于3楼  查看完整内容

使用方法: 在程序中添加上面的代码,运行下面的代码就可以了。这程序会产生多个数据集。如果你想把所有数据集都放在一起的话,请跟贴,我帮你写代码。在macro中,ranseed就是一个随机种子数,随便写什么都可以,前提是数字哦。 loop是你想重复多少次试验,按你的要求就是要10000了。 record是你想在一次试验中出现多少次观测值了。按你的要求就是100了 这个程序是按照等时间观测布朗运动的结果的,数据集中有group ,x ,y3个 ...

sakunamary 发表于3楼  查看完整内容

%macro brown_move(ranseed,loop,record);%do t=1 %to &loop.;data brown_movement_&t.;do i =1 to &record.; if i=1 then do ; group=&t.; x=ranuni(&ranseed.+&t.); y=ranuni(&ranseed.+&t.+1); output; end; else ; if i>1 then do; group=&t.; if ranuni(&ranseed.+&t.+2)<0.5 then x=x+ranuni(&ranse ...

本帖被以下文库推荐

沙发
sakunamary 发表于 2007-1-20 19:46:00


%macro brown_move(ranseed,loop,record);
%do t=1 %to &loop.;
data brown_movement_&t.;
do i =1 to &record.;
if i=1 then do ;
group=&t.;
x=ranuni(&ranseed.+&t.);
y=ranuni(&ranseed.+&t.+1);
output;
end;
else ;
if i>1 then do;
group=&t.;
if ranuni(&ranseed.+&t.+2)<0.5 then x=x+ranuni(&ranseed.+&t.+2);
else x=x-ranuni(&ranseed.+&t.+2);
if ranuni(&ranseed.+&t.+3)<0.5 then y=y+ranuni(&ranseed.+&t.+3);
else y=y-ranuni(&ranseed.+&t.+3);
output;
end;
end;
drop i;
run;


%if &t. = 1 %then %do ;
data brown_movement;
set brown_movement_&t.;
run;
%end;
%else %do;
data brown_movement;
set brown_movement
brown_movement_&t.;
run;
%end;
proc sql; drop table brown_movement_&t.;quit;
%end;

%mend brown_move;

[此贴子已经被作者于2007-1-20 20:00:26编辑过]


xmok77  金钱 +100  奖励 2009-3-5 22:13:55
xmok77  金钱 +100  奖励 2009-3-5 22:30:57
已有 1 人评分经验 论坛币 收起 理由
bakoll + 3 + 20 热心帮助其他会员

总评分: 经验 + 3  论坛币 + 20   查看全部评分

我sas故我在

藤椅
sakunamary 发表于 2007-1-20 19:46:00

使用方法:

在程序中添加上面的代码,运行下面的代码就可以了。这程序会产生多个数据集。如果你想把所有数据集都放在一起的话,请跟贴,我帮你写代码。
在macro中,ranseed就是一个随机种子数,随便写什么都可以,前提是数字哦。

loop是你想重复多少次试验,按你的要求就是要10000了。

record是你想在一次试验中出现多少次观测值了。按你的要求就是100了


这个程序是按照等时间观测布朗运动的结果的,数据集中有group ,x ,y3个变量;

group就是试验的次数。

x,y就是小物体运动的瞬时坐标。同一group的小物体运动是连续的,不同group的运动是独立的。这个要注意哦,如果你要画图(像物理书上的那个图)就自己用excel画画就行了。

注意:重新运行程序时要注意清理work中的原有数据集。

[此贴子已经被作者于2007-1-20 20:08:05编辑过]

我sas故我在

板凳
sakunamary 发表于 2007-1-20 20:07:00
斑竹,我这样回复算不算是回答人家的帖子啊?有没有加分呢?
我sas故我在

报纸
hookzhang 发表于 2007-1-20 21:49:00
哇。出手不凡。敬仰

地板
Vulpecula 发表于 2007-2-24 16:40:00
好人有好报啊

7
jhma 发表于 2007-6-15 01:40:00
pretty good

8
ruby436 发表于 2007-8-31 00:55:00

https://bbs.pinggu.org/thread-227934-1-1.html

这是我的分享,有奖励吗?

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-25 01:33