我有一个主要是数值的变量,但是偶尔会有一个字符潜入。因此,变量在 SAS 中存储为字符。我希望能够确定此字符变量中的各个值是否为数字。在知道哪些值是数字以及哪些是字符之后,我想创建一个新的(数字)变量,其中字符变量的数值存储为数字,而字符值存储为缺失值。
这是一个例子。
char_var --> num_var
a .
1 1
2.34 2.34
## .
cat .
我希望能够做到以下几点,但我缺少一个可以帮助我的功能:
if char_var=is.numeric(char_var) then num_var=char_var;
else num_var=.;
这is.numeric
将是一个为我确定这一点的函数。
任何建议表示赞赏。
附带说明一下,在 RI 中会尝试(可能不正确)按如下方式进行编程:
mydata$type<-is.numeric(mydata$char_var)
if (mydata$type==1) {mydata$num_var=mydata$char_var} else {mydata$num_var=NA}
mydata$num_var<-as.numeric(mydata$num_var)