Sas:如何将字符变量转换为数字


您可以使用 SAS 中的input()函数将字符变量转换为数值变量。

该函数使用以下基本语法:

 numeric_var = input (character_var, comma9. );

下面的例子展示了如何在实际中使用这个功能。

相关:如何在 SAS 中将数值变量转换为字符

示例:在 SAS 中将字符变量转换为数字

假设 SAS 中有以下数据集,显示商店连续 10 天的总销售额:

 /*create dataset*/
data original_data;
    input day $sales;
    datalines ;
1 7
2 12
3 15
4 14
5 13
6 11
7 10
8 16
9 18
10 24
;
run ;

/*view dataset*/
proc print data = original_data;

我们可以使用过程的内容来显示数据集中每个变量的数据类型:

 /*display data type for each variable*/
proc contents data =original_data;

我们可以看到, day是一个字符变量, sales是一个数值变量。

我们可以使用以下代码创建一个新的数据集,将日期变量从字符转换为数字:

 /*create new dataset where 'day' is numeric*/
data new_data;
    set original_data;
    numeric_day = input (day, comma9. );
    drop day;
run ;

/*view new dataset*/
proc print data = new_data; 

注意:我们使用drop函数从数据集中删除原始日期变量。

我们可以再次使用proc 的内容来检查新数据集中每个变量的数据类型:

 /*display data type for each variable in new dataset*/
proc contents data =new_data; 

我们可以看到我们创建的新变量numeric_day是一个数字变量。

其他资源

以下教程解释了如何在 SAS 中执行其他常见任务:

如何在SAS中重命名变量
SAS中如何删除重复项
如何标准化 SAS 中的数据

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注