2179 7

怎么把数据集加序号标记,然后删除某行,自己编了几种都有error [推广有奖]

  • 5关注
  • 0粉丝

本科生

83%

还不是VIP/贵宾

-

威望
0
论坛币
8 个
通用积分
0
学术水平
0 点
热心指数
1 点
信用等级
0 点
经验
991 点
帖子
87
精华
0
在线时间
67 小时
注册时间
2015-4-21
最后登录
2016-4-12

相似文件 换一批

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
这个数据集,要把std 和mean 行删去
数据集.jpg
编了一个用 sql的。没有标记,新的数据集是finally—4  原数据集是   finally—3
  1. proc sql ;
  2. create table work.finally_4 as
  3. select * from finally_3 ;
  4. delete from work.finally_4
  5. where item="Mean" and item="STD" ;
  6. quit ;
复制代码
log  是,表示没有删除行,这个where语句是有错误么,可是log里面没有warning 和error
  1. 444 proc sql ;
  2. 445 create table work.finally_4 as
  3. 446 select * from finally_3 ;
  4. NOTE: Table WORK.FINALLY_4 created, with 13 rows and 4 columns.

  5. 447 delete from work.finally_4
  6. 448 where item="Mean" and item="STD" ;
  7. NOTE: No rows were deleted from WORK.FINALLY_4.

  8. 449 quit ;
  9. NOTE: PROCEDURE SQL used (Total process time):
  10. real time 0.01 seconds
  11. cpu time 0.01 seconds
复制代码
从论坛上看到一个
  1. data finally_4 ;
  2. set finally_3 ;
  3. obs=_n_ ;
  4. run ;
复制代码
obs.jpg
obs 在最后一列,这个不算标记上吧
把上面程序的 where item="Mean" and item="STD" ;  换成 where obs=7 有error

之前编写过一个其他的code
  1. data Age_sum2_ ;
  2. set Age_sum2 (rename=( _STAT_=item colA=GroupA colB=GroupB colC=GroupC)) ;
  3. if item="MEAN" then delete ;
  4. if item="STD" then delete ;
复制代码
用 if  then
可以删除行

为什么用sql的删除语句
               delete from 《表名》
               《where语句》
删不了呢





二维码

扫码加我 拉你入群

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

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

关键词:Error 数据集 加序号 err Procedure error

沙发
teqel 发表于 2015-9-23 02:25:49 |只看作者 |坛友微信交流群
where item="Mean" or item="STD" ;
已有 1 人评分论坛币 收起 理由
admin_kefu + 5 热心帮助其他会员

总评分: 论坛币 + 5   查看全部评分

使用道具

藤椅
孤单的我们 发表于 2015-9-23 09:36:28 |只看作者 |坛友微信交流群
where item="MEAN" or item="STD" ;
已有 1 人评分论坛币 收起 理由
admin_kefu + 5 热心帮助其他会员

总评分: 论坛币 + 5   查看全部评分

使用道具

板凳
wwwguilichao 学生认证  发表于 2015-9-23 09:52:23 |只看作者 |坛友微信交流群
data  finally_4;                                                                                                                       
        set finally_3;                                                                                                                  
        if item in("Mean","STD") then delete;                                                                                          
run;      
用data步多简单
已有 1 人评分论坛币 收起 理由
admin_kefu + 10 热心帮助其他会员

总评分: 论坛币 + 10   查看全部评分

使用道具

teqel 发表于 2015-9-23 02:25
where item="Mean" or item="STD" ;
11.jpg
恩,可是改完了以后只删了 STD行
Mean行还在
而且元数据集的两个空行也没了
  1. proc sql ;
  2. create table work.finally_4 as
  3. select * from finally_3 ;
  4. delete from work.finally_4
  5. where item="Mean" or item="STD" ;
  6. quit ;
复制代码

使用道具

wwwguilichao 发表于 2015-9-23 09:52
data  finally_4;                                                                                    ...
谢谢
按您的改了一下
12.jpg
13.jpg
只删了STD行 mean行还在
而且之前的两个空行也没有了

使用道具

7
teqel 发表于 2015-9-24 00:00:45 |只看作者 |坛友微信交流群
小琪是豆豆猪 发表于 2015-9-23 22:07
谢谢
按您的改了一下
大写MEAN

使用道具

teqel 发表于 2015-9-24 00:00
大写MEAN
改了MEAN
,然后MEAN 和 STD行都没删,两个空行删了
123.jpg
1234.jpg

使用道具

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

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

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

GMT+8, 2024-5-11 03:06