楼主: NK
2330 5

[原创博文] 【求助】怎么样将id号等于no的记录输出出来 [推广有奖]

  • 0关注
  • 1粉丝

已卖:547份资源

博士生

71%

还不是VIP/贵宾

-

威望
0
论坛币
9196 个
通用积分
10.2656
学术水平
5 点
热心指数
16 点
信用等级
6 点
经验
10936 点
帖子
123
精华
0
在线时间
491 小时
注册时间
2007-6-28
最后登录
2025-4-19

楼主
NK 发表于 2010-10-7 10:58:46 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
各位大侠,手头数据如下:
                               Obs    no    id     x     y
                                    1     1     1     2     4
                                    2     2     2     5     7
                                    3     3     3     8    10
                                    4     4     4    11    13
                                    5     4     5    14    16
                                    6     4     6    17    19
                                    7     5     7    20    22
                                    8     6     8    23    25
                                    9     8     9    26    28
                                  10    8    10    29    31
现在想把id号为no中的数字的所有10条记录输出到另外的数据集,应该怎么样做?
多谢!
二维码

扫码加我 拉你入群

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

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

关键词:怎么样 各位大侠 obs 数据集 记录

沙发
hopewell 发表于 2010-10-7 11:36:11
不太理解题目的意思
  1. data raw;
  2.     input no id x y;
  3. datalines;
  4. 1     1     2     4
  5. 2     2     5     7
  6. 3     3     8    10
  7. 4     4    11    13
  8. 4     5    14    16
  9. 4     6    17    19
  10. 5     7    20    22
  11. 6     8    23    25
  12. 8     9    26    28
  13. 8    10    29    31
  14. ;
  15. proc sql;
  16.     create table out as
  17.         select a.no, b.id, b.x, b.y
  18.             from raw a, raw b
  19.             where a.no=b.id
  20.             order by a.no;
  21. quit;
复制代码

藤椅
PharmD 发表于 2010-10-7 12:04:12
hopewell 发表于 2010-10-6 20:36
不太理解题目的意思
  1. data raw;
  2.     input no id x y;
  3. datalines;
  4. 1     1     2     4
  5. 2     2     5     7
  6. 3     3     8    10
  7. 4     4    11    13
  8. 4     5    14    16
  9. 4     6    17    19
  10. 5     7    20    22
  11. 6     8    23    25
  12. 8     9    26    28
  13. 8    10    29    31
  14. ;
  15. proc sql;
  16.     create table out as
  17.         select a.no, b.id, b.x, b.y
  18.             from raw a, raw b
  19.             where a.no=b.id
  20.             order by a.no;
  21. quit;
复制代码
用where很没有效率,用on比较好。
  1. proc sql;
  2.     create table out as
  3.         select a.no, b.id, b.x, b.y
  4.             from raw a inner join raw b
  5.             on a.no=b.id
  6.             order by no;
  7. quit;
复制代码

板凳
liudeng2005 发表于 2010-10-7 12:55:49
感觉楼主obs应该不是一个变量,如果是那样的话,可以考虑下用_n_;
我就是我@!

报纸
NK 发表于 2010-10-7 14:52:38
多谢各位~~THX~

地板
823954913 发表于 2010-10-11 12:30:13
data raw;
    input no id x y;
datalines;
1     1     2     4
2     2     5     7
3     3     8    10
4     4    11    13
4     5    14    16
4     6    17    19
5     7    20    22
6     8    23    25
8     9    26    28
8    10    29    31
;
run;
data raw1;
set raw;
if _n_=no;
run;

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

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