我知道可以使用例如RETAIN语句在数据集中重新排序变量。假设数据集D1有变量v3,v2和v1(并且按顺序),我希望它们在数据集中显示为v1,v2和v3(从左到右查看),我可以执行以下操作:
data D1;
retain v1 v2 v3;
set D1;
run;
这可以在不读取整个数据集的情况下完成吗?
答案 0 :(得分:2)
不,如果不读取整个数据集,您实际上无法更改变量的顺序(因为这会改变它们在物理上的存储方式)。根据为什么您要重新排序的原因,您可以通过创建视图将它们重新排序为您使用它们的过程的一部分:
data d1v/view=d1v;
retain v1 v2 v3;
set d1;
run;
然后您可以使用d1v
,就像在大多数(但不是全部)案例中使用d1
一样。