SAS-从连续变量到分类变量的重新格式化
我已经用谷歌搜索了几个小时(断断续续)来寻找这个问题的答案 我有一个数字(分类)字段,我认为SAS自动假定它是连续的。这是一个客户编号,当我需要将其作为一个单独的元素时,SAS会自动将其放入图形中。有SAS经验的人能给我解释一下如何将连续数转换成分类数吗 我发布任何代码都没有意义,因为这是一个非常普通的问题。我的数据如下所示,我正试图使用format函数将custno字段更改为categorySAS-从连续变量到分类变量的重新格式化,sas,Sas,我已经用谷歌搜索了几个小时(断断续续)来寻找这个问题的答案 我有一个数字(分类)字段,我认为SAS自动假定它是连续的。这是一个客户编号,当我需要将其作为一个单独的元素时,SAS会自动将其放入图形中。有SAS经验的人能给我解释一下如何将连续数转换成分类数吗 我发布任何代码都没有意义,因为这是一个非常普通的问题。我的数据如下所示,我正试图使用format函数将custno字段更改为category Obs custno gender age postcode Region cnt 1 1 Male
Obs custno gender age postcode Region cnt
1 1 Male 48 18 S 50
2 2 Female 56 20 N 38
3 3 Female 51 25 N 50
4 4 Male 27 9 W 16
任何帮助都将不胜感激
谢谢,
牛肉
如果将其更改为字符变量而不是数字变量,则需要创建一个新变量来执行此操作
custno_char = put(custno, best32. -l);
然后在程序中使用此变量
编辑:
-l用于左对齐数据,如果要右对齐,请将其更改为-r。
您也可以完全忽略它,因为它是一个可选参数
custno_char = put(custno, best32. -r);
虽然我发布了一个答案,但我很好奇这是怎么发生的,因为我一眼就看不出来。我刚刚尝试过使用它——将代码输入到我原来的帖子中。得到一个语法错误(这可能是很明显的,我刚刚拿起sas…)thx@ReezaIn PUT,最后一个参数是L(字母L)而不是1。这用于左对齐输出。现在我想起来了,应该是-r,表示正确的对齐。它也是可选的。
custno_char = put(custno, best32. -r);