Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sorting Stata:使用自定义排序顺序对数据集排序_Sorting_Stata - Fatal编程技术网

Sorting Stata:使用自定义排序顺序对数据集排序

Sorting Stata:使用自定义排序顺序对数据集排序,sorting,stata,Sorting,Stata,我有一个数据集,其中数值变量VARSORT只取3个值:10、20和30(没有遗漏) 我想根据VARSORT对观察结果进行排序,但自定义排序顺序如下:先20,然后10,然后30 可以这样做吗?您只需要按所需顺序对变量进行排序,在许多其他解决方案中 gen varsort2 = cond(varsort == 20, -10, varsort) 如果不指定变量,则无法指定自定义订单。显然,Stata的想法是,数据集可以按一个或多个变量排序。如果是这样,那么跟踪这些变量对于Stata记录数据集是否已

我有一个数据集,其中数值变量VARSORT只取3个值:10、20和30(没有遗漏)

我想根据VARSORT对观察结果进行排序,但自定义排序顺序如下:先20,然后10,然后30


可以这样做吗?

您只需要按所需顺序对变量进行排序,在许多其他解决方案中

gen varsort2 = cond(varsort == 20, -10, varsort)

如果不指定变量,则无法指定自定义订单。显然,Stata的想法是,数据集可以按一个或多个变量排序。如果是这样,那么跟踪这些变量对于Stata记录数据集是否已更改(包括排序顺序的更改)至关重要。如果不使用一个或多个变量来指示排序顺序,则该机制不能以相同的方式工作

创建一个辅助变量,当
VARSORT==20
时,该变量的值为1,当
VARSORT==10
时,该变量的值为2,等等。然后通过辅助变量
sort
。请注意,在
VARSORT
的重复值中,您将得到一个随机排序顺序,这可能会影响您重现结果的能力。