全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2844 6
2008-12-11
有两变量下的数据形式如下:
a b
1 2
1 6
1 7
1 8
1 11
1 16
1 17
1 18
1 19
1 21
1 23
1 24
1 28
1 29
1 31
1 32
1 33
1 34
1 37
1 40
1 41
1 42
1 43
1 46
1 51
1 52
1 55
1 57
1 58
要转变成如下形式,怎么办?非常感谢您的关注。
1 2
3 8
1 11
4 19
1 21
2 24
2 29
4 34
1 37
3 42
再次感谢。

二维码

扫码加我 拉你入群

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

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

全部回复
2008-12-11 21:33:00

我咋没有看明白是转换的规律是什么呢?

二维码

扫码加我 拉你入群

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

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

2008-12-11 22:10:00
以下是引用luijb在2008-12-11 21:33:00的发言:

我咋没有看明白是转换的规律是什么呢?

b数有连续性时,保留末一个;对应的a累计到此末一位。

二维码

扫码加我 拉你入群

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

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

2008-12-12 18:50:00

几个论坛上没有人能解决?

我心里哇凉,哇凉滴…………

▄【┻┳═一 ▄【┳一 ▄【┻═┳一 ▄【┳-一╰⊙═⊙╯

二维码

扫码加我 拉你入群

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

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

2008-12-12 21:25:00
以下是引用wxq1638在2008-12-12 18:50:00的发言:

几个论坛上没有人能解决?

我心里哇凉,哇凉滴…………

▄【┻┳═一 ▄【┳一 ▄【┻═┳一 ▄【┳-一╰⊙═⊙╯

其实高手都会,只不过懒得回答,请允许我介个菜鸟来回答一下吧 O(∩_∩)O哈哈~

data x;
input a b@@;
s+a;
cards;
1 2
1 6
1 7
1 8
1 11
1 16
1 17
1 18
1 19
1 21
1 23
1 24
1 28
1 29
1 31
1 32
1 33
1 34
1 37
1 40
1 41
1 42
1 43
1 46
1 51
1 52
1 55
1 57
1 58
;
run;
data y;
input b@@;
cards;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
;
run;
proc sort data=x;
by b;
proc sort data=y;
by b;
data z;
merge x y;
by b;run;
data k;
set z;
by b;
if a=. then a=0;
run;

data find;
   set k;
   set k(firstobs=2 rename=(a=forward));
   drop  forward;
   b=lag(b);
   s=lag(s);
   d=a-forward;
   run;
 data j;
  set find;
  if s=. then s=0;
 run;
 data jieguo;
 set j;
 where d=1;
 keep s b;
 s=dif(s);
 if s=. then s=1;
 rename s=a;
 proc print;
 id a;
 run;

[此贴子已经被作者于2008-12-13 0:28:31编辑过]

二维码

扫码加我 拉你入群

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

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

2008-12-12 22:22:00
什么都不说了,sushe1527 兄弟,好!!!
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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