美文网首页
277:工作中实用的解决问题方法

277:工作中实用的解决问题方法

作者: SASPRO的打工人生活 | 来源:发表于2023-10-30 22:59 被阅读0次

最近工作很忙,随缘更新,也没学啥,混日子了。

一:对于缺失的变量如何不报warning?

有时候我们在SUPP数据集创建了一些QNAM,然后在创建ADaM的时候,因为某些原因,这个变量不存在了,那么我们在转置之后,然后程序里又写上了这个变量的名字,那么程序肯定会报未初始化的note。

data test;

if a="test" then flag="Y";

run;

对于这样的问题,我们可以这样化解:

if a="" then a="";

这样不管这个变量存不存在都不会报那个log,而且之后这个变量有值的话,它也不会置空,而是值是什么就是什么。你也不需要设定它的长度,很方便。

data test;

if a="" then a="";

if a="test" then flag="Y";

run;

二:有时候我们跑proc template的时候会遇到这样的ERROR:

ERROR: Template 'xxxxx' was unable to write to the template store!

SAS官网上是这样解释的:

对于这样的ERROR,一条语句就可以解决:

ods path(prepend) work.templat(update);

三:对于宏变量的处理

有时候我们会遇到日期中出现不是日期格式的数据,比如“NA”,“未知”,首先这应该是DM录入不认真,CRF上都没有这个选项,哪怕为空也行,但是就是不知道这些值哪来的。

那么我想提前对这些“未知”处理,那么可能就需要用到一些宏。

首先可以告诉大家这样肯定是处理不了的,我还是建议大家好好看我的宏系列,这样写宏出问题的时候,你至少知道为什么会出错或者不起作用。

比如上面这样,你感觉逻辑很正确,应该可以正确输出的,但是如果你了解宏的运行机制,就知道不会成功,因为宏语言是优先于data步先编译的。

%if &indate=未知 %then %do;已经先编译了,而且宏变量也先读取了进来,所以可以理解为%if CMSTDAT=2023/10 %then %do;但是CMSTDAT这个变量在哪呢?注意这时候SAS还没set test数据集呢,所以肯定不会成功。

test2数据集并没有输出flag这个变量,但是如果我们把%if 变成正常的if,这时候就可以实现了

相关文章

  • Excel读书笔记7——使用辅助列(表)

    工作中使用Excel的原则是:实用至上,能简单就不复杂,不求最好,但求最懒,用最快的方法解决问题,不必追求最...

  • 良梦——问题决定答案

    工作中遇到很多问题,需要寻找方法,解决问题。我们都在为解决各种问题而忙碌着。所以,解决问题的方法,就是我们最需要的...

  • 记录2023年第一次头脑风暴

    头脑风暴(Brain Storming)是当今最负盛名、最实用的一种集体式、创造性解决问题的方法,是集体解决问题,...

  • 12月8日

    在工作中发现问题,积极主动解决问题,不找借口找方法。

  • 1.18日课感悟

    无论是在工作中还是在战争中都需要找对方法才可以解决问题。

  • 【0805晨读感悟】提高效率的三个方法

    如果你在工作中有高效的工作方法,会让你更能感受到工作的乐趣。更容易发现工作中的问题,思考并找到解决问题的方法。 这...

  • 《麦肯锡方法》(1):思考问题的方法

    麦肯锡思考问题的方法 麦肯锡是全球最顶尖的咨询公司,这家公司开发了许多实用性很高的思考和解决问题的方法,这些方法,...

  • 阅读各类书

    阅读实用型书 任何实用型的书都不能解决实际问题。书籍只是提出问题的解决方法,而要真正解决问题就必须行动。此外实用性...

  • 读《麦肯锡》有感

    一、工作中需要的能力 1、掌握与分析现状的能力 2、解决问题的能力、解决问题需要的能力 正确的解决方法: 想办法如...

  • 听说,JavaScript 中,这几个操作对象的方法很实用

    操作 JavaScript 对象是日常工作中经常接触的工作,随着 JavaScript 的飞速发展,解决问题的方法...

网友评论

      本文标题:277:工作中实用的解决问题方法

      本文链接:https://www.haomeiwen.com/subject/yzqiidtx.html