我有一个 SAS 数据集:
+-------+-------+-------+-------+
| var_1 | var_2 | var_3 | index |
+-------+-------+-------+-------+
| 1 | 10 | 100 | 2 |
| 2 | 20 | 200 | 1 |
| 3 | 30 | 300 | 3 |
+-------+-------+-------+-------+
现在,我想使用索引变量中的相应条目在同一数据集中创建一个新变量,其每行中的值来自 var_1、var_2 和 var_3 之一。
也就是说,如果我的输出变量是 var_out,那么数据集将如下所示:
+-------+-------+-------+-------+---------+
| var_1 | var_2 | var_3 | index | var_out |
+-------+-------+-------+-------+---------+
| 1 | 10 | 100 | 2 | 10 |
| 2 | 20 | 200 | 1 | 2 |
| 3 | 30 | 300 | 3 | 300 |
+-------+-------+-------+-------+---------+
这里 index 的第一个值为 2,因此 var_out 取 var_2 的值,即 10
如果需要,有什么办法可以使用宏变量吗?