我正在尝试将非数字字符变量,区域更改为数字。 当我使用输入函数时,它会将字符中的所有值转换为缺失。任何人都可以帮助我,也许解释为什么会这样?
答案 0 :(得分:0)
Line,您需要使用适合数据的信息。通常,使用w.d信息。 例如,如果您在第一列中有值并使用6.2信息,您将获得第二列中的值:
2300 23
-2300 -23
23. 23
2.3 2.3
答案 1 :(得分:0)
使用虚拟一次性变量加载字符数据,创建SAS格式以将char值转换为新持久变量中的numeric。
使用规则创建SAS格式,将字符转换为区域编号。 EJ。
proc format library=library;
value Num_region
'Region 1' = 1
'Region 2','North' = 2
'R3','East' = 3
'4','W' = 4
other = 9
;
run;
请点击此处了解详情:Building and Using User Defined Formats
使用input()函数创建一个新的数值变量,将新格式应用于虚拟变量
Numeric_var = input(dummy,Num_region.);
丢弃虚拟变量
drop dummy;