全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2893 11
2010-09-27
我得编写这么一段程序:
     有两个信号A和B,取值为0-1,取0和1是随机的。
    在表单里我们可以看到是      A      B
                                                    1      0
                                                    0      0
                                                    1      0
                                                    0      1
                                                    ..........
现在要达到这么一个过程:我要建立一个新的变量(数组也可以),初始值为0。在A第一次取1的时候,对应行就设为1,然后等待一直到B列出现1,则重设为0,如此反复。
请论坛各位大侠们指点,小弟先谢谢了!!
二维码

扫码加我 拉你入群

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

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

全部回复
2010-9-27 17:57:45
我的理解是A开,B关
A B都为1认为是开关各一次,即为0的话
这个试试,没仔细测......
复制代码

还有种可能是A B都可能是开
回家再写,呵呵
二维码

扫码加我 拉你入群

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

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

2010-9-27 19:05:21
试试看:
data old;
         do i=1 to 100 by 1;
a=(ranuni(123)>0.5);
b=(ranuni(123)>0.5);
                 output;
         end;
         drop i;
run;
data new;
set a;       
retain c 0;       
if c=1 and b=1 then c=0;
else if a=1 then c=1;
run;
二维码

扫码加我 拉你入群

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

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

2010-9-27 20:00:59
我觉得楼上的两位没有理解楼主的意思
二维码

扫码加我 拉你入群

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

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

2010-9-27 20:01:21
data crackman;
input a b;
obs=_n_;
datalines;
0 0       
0 1       
1 0       
0 0       
1 0       
0 1       
0 0       
1 0       
1 0       
0 1       
;
run;
二维码

扫码加我 拉你入群

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

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

2010-9-27 20:02:03
感谢各位大侠的指导!
我想再问问进一步问题。
   同样是刚才A、B,如果将建立的新变量C设定为:
    C的初始值为0;
    在A第一次取值为1时,赋值为1,直到B取值为1时重设为0,期间不考虑A的取值变化。
    在B第一次取值为1时,赋值为-1,直到A取值为1重设为0,期间不考虑B值的取值变化。
如果各位能帮我解决这个问题,那实在是感激不尽!
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群