String 在SAS中将字符转换为无格式的数字?

String 在SAS中将字符转换为无格式的数字?,string,text,sas,numeric,String,Text,Sas,Numeric,我知道这是一个简单的问题,但我很难将字符变量转换为数字变量 我在一个数据集中有一列,大约有170万行,用来衡量某件事情发生的月数 它被记录为一个字符变量,写为:“X月”,其中X表示月数 如何将“X个月”字符转换为X个数字?这里有一种方法: data have ; infile cards dsd ; input oldvar:$10.; datalines4; 4 months 3 months 17 months 111 months ;;;; run; data want; s

我知道这是一个简单的问题,但我很难将字符变量转换为数字变量

我在一个数据集中有一列,大约有170万行,用来衡量某件事情发生的月数

它被记录为一个字符变量,写为:“X月”,其中X表示月数

如何将“X个月”字符转换为X个数字?

这里有一种方法:

data have ;
  infile cards dsd ;
  input oldvar:$10.;
datalines4;
4 months
3 months
17 months
111 months
;;;;
run;

data want;
  set have;
  newvar=input(scan(oldvar,1),8.);
run;
如下所示,生成的
newvar
变量没有格式:


你试过什么?在这种情况下,它是一个INFORMAT,告诉SAS如何读取数据,因此不确定您为什么在这里说“没有格式”。我也猜这不仅仅是X个月,确保提供足够的样本数据来说明你的问题。如前所述,此问题不符合SO指南,因为到目前为止,您尚未展示任何解决问题的尝试-您可能已经这样做了,但尚未展示。