1
我知道可以使用RETAIN语句在数据集中重新排序变量。假设数据集D1的变量为v3,v2和v1(并按此顺序),并且我希望它们在数据集中显示为v1,v2和v3(从左到右查看),我可以执行以下操作:重新排序变量而不重新读取完整数据集
data D1;
retain v1 v2 v3;
set D1;
run;
这样做可以不读取整个数据集?
我知道可以使用RETAIN语句在数据集中重新排序变量。假设数据集D1的变量为v3,v2和v1(并按此顺序),并且我希望它们在数据集中显示为v1,v2和v3(从左到右查看),我可以执行以下操作:重新排序变量而不重新读取完整数据集
data D1;
retain v1 v2 v3;
set D1;
run;
这样做可以不读取整个数据集?
不,您不能在不读取整个数据集的情况下实际更改变量的顺序(因为这会更改物理存储方式)。根据不同的原因为什么要重新排序,你可以重新安排他们为你创建一个视图使用它们的过程的一部分:
data d1v/view=d1v;
retain v1 v2 v3;
set d1;
run;
那么你可以使用d1v
,你会在大多数(但不是全部)情况下都使用了d1
。