如何在 sas 中使用 proc append(附示例)


您可以使用SAS中的PROC APPEND将一个数据集的值追加到另一个数据集的末尾。

此过程使用以下基本语法:

 proc append
    base =data1
    data =data2;
run ;

请注意,此过程不会创建新的数据集。相反,它会自动将 data2 中的值附加到 data1 的末尾。

以下示例展示了如何在实践中使用此过程。

示例:在 SAS 中使用 Proc Append

假设我们在 SAS 中有以下两组数据:

 /*create datasets*/
data data1;
    input team $pointsrebounds;
    datalines ;
At 25 10
B 18 4
C 18 7
D 24 12
E 27 11
;
run ;

data data2;
    input team $pointsrebounds;
    datalines ;
F 26 8
G 30 4
H 27 9
I 21 12
D 20 6
;
run ;

/*view datasets*/
proc print data =data1;
proc print data =data2; 

我们可以使用下面的PROC APPEND语句将data2中的值添加到data1的末尾:

 /*append data2 to end of data1*/
proc append
    base =data1
    data =data2;
run ;

/*view updated data1*/
proc print data =data1; 

我们可以看到data2的值已经被添加到data1的末尾了。 data1数据集现在总共包含 10 个观测值。

需要注意的是,如果在两个数据集具有不同的列名称时尝试使用PROC APPEND ,您将收到以下错误消息:

 ERROR: No appending done because of anomalies listed above.
       Use FORCE option to add these files.

在这种情况下,您可以更改列名以匹配或使用force参数强制执行追加过程。

例如,假设第二个数据集具有变量名称“bounce”而不是“bounces”。

我们可以使用以下语法来添加两个数据集并强制添加它们:

 /*append data2 to end of data1*/
proc append
    base =data1
    data =data2
    strength ;
run ;

/*view updated data1*/
proc print data =data1; 

请注意,data2 已添加到 data1,但对于添加的数据集,bounces 列中的值为空。

注意:您可以在此处找到完整的PROC APPEND文档。

其他资源

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

如何在SAS中使用过程摘要
如何在 SAS 中使用 Proc Tabulate
如何在 SAS 中使用 Proc 排序规则

添加评论

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