SAS中文论坛

标题: 在SCL中如何删除数据集的一列(变量)? [打印本页]

作者: shiyiming    时间: 2003-12-9 21:50
标题: 在SCL中如何删除数据集的一列(变量)?
SCL对于数据集的操作中,删除一行(观测)可以用delobs(),但找了好久,也没有发现可以执行删除列(变量)操作的函数或方法,哪位大侠知道?还请不吝赐教!谢谢!
作者: shiyiming    时间: 2003-12-10 10:19
SCL中只有MODVAR和NEWVAR,也就是说只能修改和添加列。
看来你只能用BASE的方法了,在我印象中应该PROC SQL和PROC DATASETS都可以,挑一种我熟的供你参考:
data class; set sashelp.class; run;
proc sql noprint; alter table class drop name; quit;
作者: shiyiming    时间: 2003-12-10 11:15
SCL中可以用宏操作数据集   如:

Submit Continue;
  Data Table (drop=column);
     Set Table;
  Run;
EndSubmit;
作者: shiyiming    时间: 2003-12-10 11:51
谢谢两位的指点,虽然不是我所期望的解决办法,但仍可以解决问题。看来在SCL中删除列的操作是没有直接的办法。

谢谢!
作者: shiyiming    时间: 2003-12-11 11:10
经过确认,确实没有直接的方法,又一建议:
rc=copy('work.mydata','work.mydata(drop=var2)');
作者: shiyiming    时间: 2003-12-11 16:41
谢谢shiyiming兄的指点,这个办法相对方便一些。




欢迎光临 SAS中文论坛 (http://mysas.net/forum/) Powered by Discuz! X3.2