【发布时间】:2018-02-16 00:22:42
【问题描述】:
我在 SAS 中使用包含大约 80000 个观察值的文件,我决定保留 11 个变量。
我想删除值超过 97 的变量。这些是缺失的观察值,我不想处理。
我尝试使用以下代码(请不要判断):
199 DATA radata;
200 SET radata;
201 IF ca10 <= 97 THEN OUTPUT;
202 IF ca10 > 97 THEN DELETE;
203 IF sex <= 97 THEN OUTPUT;
204 IF sex > 97 THEN DELETE;
205 IF sex <= 97 THEN OUTPUT;
206 IF sex > 97 THEN DELETE;
207 IF cityrur <= 97 THEN OUTPUT;
208 IF cityrur > 97 THEN DELETE;
209 IF edu3 <= 97 THEN OUTPUT;
210 IF edu3 > 97 THEN DELETE;
211 IF ca10 <= 97 THEN OUTPUT;
212 IF ca10 > 97 THEN DELETE;
213 IF hinc3rel <= 97 THEN OUTPUT;
214 IF hinc3rel > 97 THEN DELETE;
215 IF aa10i <= 97 THEN OUTPUT;
216 IF aa10i > 97 THEN DELETE;
217 IF ba10 <= 97 THEN OUTPUT;
218 IF ba10 > 97 THEN DELETE;
219 IF age <= 97 THEN OUTPUT;
220 IF age > 97 THEN DELETE;
221 IF ga10c <= 97 THEN OUTPUT;
222 IF ga10c > 97 THEN DELETE;
223 IF bc20 <= 97 THEN OUTPUT;
224 IF bc20 > 97 THEN DELETE;
225 IF ac10a <= 97 THEN OUTPUT;
226 IF ac10a > 97 THEN DELETE;
227 IF ga10j <= 97 THEN OUTPUT;
228 IF ga10j > 97 THEN DELETE;
229 RUN;
但是,SAS 的反应不是减去观察结果,而是添加更多观察结果!
请帮忙.....
【问题讨论】:
-
请您发布一个示例,说明您的输入数据集是什么样的以及您尝试生成的相应输出数据?
-
是否要删除一个或多个变量大于 97 的所有行?或者所有变量都 > 97 的所有行?或者所有值都 > 97 的所有列?未判断的代码是杂乱无章的,输出将为每个值 97 的情况。
标签: sas