Sas 保留语句和下划线

Sas 保留语句和下划线,sas,Sas,考虑以下数据集测试: x y 1 A 2 A . A 4 A . B . B 7 B 8 B 基本上,我希望将组中缺少的值替换为以前的值。但如果前一个值来自另一个组,则不要使用该值替换当前值 考虑以下代码: proc sort data=testout=Sorted; by y; run; data Out2(drop=_x); set Sorted; by y; retain _x; if firs

考虑以下数据集测试:

  x y
  1 A
  2 A
  . A
  4 A
  . B
  . B
  7 B
  8 B
基本上,我希望将组中缺少的值替换为以前的值。但如果前一个值来自另一个组,则不要使用该值替换当前值

考虑以下代码:

proc sort data=testout=Sorted;
   by y;
   run;


    data Out2(drop=_x);
    set Sorted;
    by y;

    retain _x;
    if first.y then do;

    _x=x;
    end; else do;

    if missing(x) then do;
    x = _x;
    end; else do;
    _x = x;
    end;

    end;

    run;

x后面的下划线是什么意思(x)?

\ux
只是一个新变量。它可以是
z
last\ux
。然而,阅读代码的人可能会更清楚它与x有关;虽然我不知道有任何类似于“u表示以前的值”的约定,但这并不是一个不合理的约定。

\ux
只是一个新变量。它可以是
z
last\ux
。然而,阅读代码的人可能会更清楚它与x有关;虽然我不知道有任何类似于“u表示以前的值”的约定,但这并不是一个不合理的约定。

\ux
只是一个新变量。它可以是
z
last\ux
。然而,阅读代码的人可能会更清楚它与x有关;虽然我不知道有任何类似于“u表示以前的值”的约定,但这并不是一个不合理的约定。

\ux
只是一个新变量。它可以是
z
last\ux
。然而,阅读代码的人可能会更清楚它与x有关;虽然我不知道有哪种约定类似于“\uMeans previous value of”,但这并不是一种不合理的约定。

使用下划线作为前缀是临时变量的一种相当常见的命名约定。就SAS而言,x只是另一个变量,x没有任何特殊效果。但是,如果所有临时变量(并且只有这些变量)都以下划线开头,那么在数据步骤结束时进行整理的工作量就会少一些,因为您可以使用:通配符一次性删除它们。e、 g

data example;
  set sashelp.class;
  _age = age;
  _sex = sex;
  drop _: ;
run;

使用下划线作为前缀是临时变量相当常见的命名约定。就SAS而言,x只是另一个变量,x没有任何特殊效果。但是,如果所有临时变量(并且只有这些变量)都以下划线开头,那么在数据步骤结束时进行整理的工作量就会少一些,因为您可以使用:通配符一次性删除它们。e、 g

data example;
  set sashelp.class;
  _age = age;
  _sex = sex;
  drop _: ;
run;

使用下划线作为前缀是临时变量相当常见的命名约定。就SAS而言,x只是另一个变量,x没有任何特殊效果。但是,如果所有临时变量(并且只有这些变量)都以下划线开头,那么在数据步骤结束时进行整理的工作量就会少一些,因为您可以使用:通配符一次性删除它们。e、 g

data example;
  set sashelp.class;
  _age = age;
  _sex = sex;
  drop _: ;
run;

使用下划线作为前缀是临时变量相当常见的命名约定。就SAS而言,x只是另一个变量,x没有任何特殊效果。但是,如果所有临时变量(并且只有这些变量)都以下划线开头,那么在数据步骤结束时进行整理的工作量就会少一些,因为您可以使用:通配符一次性删除它们。e、 g

data example;
  set sashelp.class;
  _age = age;
  _sex = sex;
  drop _: ;
run;