下面是一种可能的SAS代码,假设数据集名为“mydata”、空值列名为“myvar”:

data mydata;
set mydata;
retain last_value;
if not missing(myvar) then do;
   last_value = myvar;
end;
else do;
   myvar = last_value;
end;
run;

解释:

  • retain last_value; 语句用于保留变量last_value的值,使其在每次迭代中都保持不变。
  • if not missing(myvar) then do; 判断当前行的myvar值是否为空,如果不为空,则将其赋值给last_value
  • else do; 如果当前行的myvar值为空,则将其赋值为last_value
  • myvar = last_value; 将空值列myvar的值用last_value的值替换。

注意:这段代码假设数据集已按照某个顺序排好序。如果数据集没有排序,则需要在set语句中添加sort选项。

excel中发现空值后用右侧第一个不为空的值取代的SAS代码

原文地址: https://www.cveoy.top/t/topic/buXQ 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录