Sas 如何创建一个属于另一个变量的变量?
我想创建一个变量,它只是另一个变量的一部分。我将新变量设置为与原始变量相等,然后将其格式化为我想要的格式,但它仍然保留整个原始变量的值。这是我的密码:Sas 如何创建一个属于另一个变量的变量?,sas,Sas,我想创建一个变量,它只是另一个变量的一部分。我将新变量设置为与原始变量相等,然后将其格式化为我想要的格式,但它仍然保留整个原始变量的值。这是我的密码: DATA Names; INFILE "......." firstobs=7; INPUT Name $ Rank :COMMA6. @@; Rank=-Rank; FirstTwo = Name; Format FirstTwo $2.; RUN; 我想让FirstTwo变量只等于名称的前两个字母。按照我的方法
DATA Names;
INFILE "......." firstobs=7;
INPUT Name $ Rank :COMMA6. @@;
Rank=-Rank;
FirstTwo = Name;
Format FirstTwo $2.;
RUN;
我想让FirstTwo变量只等于名称的前两个字母。按照我的方法,它不仅接受前两个字母,而且将变量的格式设置为只有两个字母。这对我没有帮助,因为稍后我想按FirstTwo排序,但它仍然按名称排序,因为FirstTwo只是名称的一种格式。有没有办法使FirstTwo仅等于名称的前两个字母,而不仅仅是前两个字母的格式?请注意,您的赋值语句是
FirstTwo=Name代码>。这就是为什么变量FirstTwo的值与Name相同。您需要更改赋值语句。尝试FirstTwo=put(Name,$2.)代码>或者,您可以使用
length firstTwo $2;
firstTwo=Name;
重要的是,长度语句出现在作业之前。哇,我真不敢相信我忘记了put()。谢谢