如何在 SAS EG 中获取行号列以通过该唯一编号简化行的选择?我想使用 PROC SQL 语法

How to get a row number column in SAS EG to ease the selection of rows by that unique number?? I want to use PROC SQL syntax

我想创建一个名为 rowno 的列,它基本上就像我现有 table 的序列号,因此即使有重复值也可以轻松删除或选择行。 输入:

Name Date   Count
BAC  10/12  45
GBS  10/12  54
JDJA 10/13  89
SAK  10/13  11
YHN  10/14  76
JUK  10/14  76

输出:

Name Date   Count **ROWno**.
BAC  10/12  45     1
GBS  10/12  54     2
JDJA 10/13  89     3
SAK  10/13  11     4
YHN  10/14  76     5
JUK  10/14  09     6

monotonic() 是一个未记录的函数,它可以执行您想要的操作。

data have;
input Name $ Date $   Count;
datalines;
BAC  10/12  45
GBS  10/12  54
JDJA 10/13  89
SAK  10/13  11
YHN  10/14  76
JUK  10/14  76
;

proc sql noprint;
create table want as
select *,monotonic() as rowno from have;quit;

您可以在数据步骤中使用 n 运算符。

假设您的输入数据集是 INPUT,使用下面的数据步骤创建一个新的数据集输出列 rownum

Data Output;
Set Input;
rownum = _n_;
run;

此代码适用于任何 Sas box,例如 Sas studio 等。