我有一张SAS表
Name id .....
Mary 3
Melissa 5
Alan 6
Greg 7
..
我想按特殊顺序对此表进行排序:Alan, Melissa, Greg, Mary . . .
这是较新的字母,也不是数字。这是我需要在表格中显示记录的方式。我怎么能这样做?
我知道一种方法:根据我的偏好创建personID:1 to whatever
,然后按personID
排序。有没有直接指定订单的方法?
答案 0 :(得分:1)
您需要有一些方法来告诉SAS如何排序。你会如何与人沟通?
可以使用PROC TRANTAB
创建自定义转换表,但如果我理解,它将在字符级别运行。在PROC SORT
SORTSEQ=LINGUISTIC
{{}}}中,您还拥有相当多的功能。这些不会解决您上面指定的问题,但如果您的问题比描述的更细微,那么它可能是正确的解决方案。
在不创建新变量的情况下解决特定问题的唯一方法可能是使用格式。您可以创建一个格式,其中值(1,2,3,4)为标记(“ALAN”“MELISSA”“GREG”“MARY”)。然后对此进行排序。它仍然会正确显示,但会按您的要求排序。这是在R中创建一个因子的SAS版本,基本上。