gpt4 book ai didi

sorting - 如何在SAS中不进行排序的情况下删除重复的记录\观察?

转载 作者:行者123 更新时间:2023-12-04 03:17:04 29 4
gpt4 key购买 nike

我想知道是否有一种方法可以重复记录而不进行排序?有时候,我想保持原始顺序,只想删除重复的记录。

是否可以?

顺便说一句,以下是我所知道的有关重复记录的信息,这些记录最终会进行排序。

1。

proc sql;
create table yourdata_nodupe as
select distinct *
From abc;
quit;

2。
proc sort data=YOURDATA nodupkey;    
by var1 var2 var3 var4 var5;
run;

最佳答案

您可以使用哈希对象来跟踪通过数据集时看到的值。仅当遇到尚未观察到的键时才输出。这将按照在输入数据集中观察到的数据的顺序输出。

这是使用输入数据集“sashelp.cars”的示例。原始数据按Make的字母顺序排列,因此您可以看到输出数据集“nodupes”保持相同的顺序。

data nodupes (drop=rc);;
length Make $13.;

declare hash found_keys();
found_keys.definekey('Make');
found_keys.definedone();

do while (not done);
set sashelp.cars end=done;
rc=found_keys.check();
if rc^=0 then do;
rc=found_keys.add();
output;
end;
end;
stop;
run;

proc print data=nodupes;run;

关于sorting - 如何在SAS中不进行排序的情况下删除重复的记录\观察?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5698291/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com