美文网首页proc report
123:proc report(五讲)--加横线以及一些新的选项

123:proc report(五讲)--加横线以及一些新的选项

作者: SASPRO的打工人生活 | 来源:发表于2022-06-26 15:52 被阅读0次

    这段时间写SDTM,发现怎么放数据存在很大的不确定性,我以前写的文章,关于PRINDC,DRVFL怎么处理并不是绝对的,只要你能给出合理的解释,一般都是可以的。

    但是不能说你心电图的数据放到AE里面,实验室检查的放到CM里面,这就是原则上的错误,不允许范的。今天继续写proc report,上次讲到template,今天讲讲加横线以及新认识的一些选项。

    以前的程序丢了,重新写了一个。

    先讲一个知识点:就是一般来说SAS会自动将你的title和footnote放到页眉页脚位置;也就是你设置的title1,title2...footnote1,footnote2...都是处于word页眉页脚位置,而不是正文位置.

    上次我是直接用title选项输出listing的标题,所以标题的位置是处于页眉,但是今天我是利用compute选项输出title

    发现这次标题跑到页眉外面了,有的申办方要求输出标题的时候,可能要放在页眉处,可能要求放在页眉外面(我不知道这样讲对不对,ICH有一个文件专门规定了格式)。我只是想说现在你知道怎么处理标题,如果要求不一样的话。

    标题放在页眉就用title选项,标题放在页眉外面就用compute选项。

    而且在template里面用选项“frame = above”那条线刚好处于页眉的交界处,也不确定它是页眉内还是页眉外(题外话:页眉是指那条虚线上面的部分吗?百度也没找到明确答案),所以我们还是用"frame = void"选项,然后自己手动添加横线。

    下面是只用"frame = void"选项,还没加横线的输出样式,只有一条横线:

    加横线的话,我们需要用到RTF格式,在RTF格式中,'\brdrb\brdrs '表示横线,但是我们需要转义一下,要不然SAS不认识这些符号。所以我们需要提前定义ODS ESCAPECHAR="^";如果你的转义符号是“@”,那就是ODS ESCAPECHAR="@"

    然后不是说你直接  ^'\brdrb\brdrs '就行了,得这样写:

    ^R/RTF'\brdrb\brdrs '

    这个^R/RTF应该是类似于SAS中的data步,表示我要开始使用RTF格式了(data步就是告诉SAS我要创建一个数据集了)

    所以我们在页眉处加上横线,写法如下,这时候是title3了

    看到在页眉处成功创建了一条横线,但是线条样式跟下面的横线好像不一样,我们同样可以在title处定义线条的属性:

    如果我们还想在标题下面加上一条横线,可以在compute这样写(因为标题也是在compute输出):

    得到如下结果

    标题加横线差不多就是这样了,现在我们处理一下footnote的横线.首先需要明确你的需求,如果你需要你的footnote横线每页都是放在最下面,那大家应该就知道要在脚注哪里定义横线了。

    输出很奇怪,横线跑脚注下面去了,我们换个位置

    注意!上面的footnote2在footnote1前面,发现没有输出,所以大家还是按照顺序footnote1放在footnote2前面吧,老老实实的,我就不截图了。

    这样看起来就正常多了,但是最后一页有的公司可能会把横线加在我截图的位置,而且备注随着横线移动,那大家知道在哪里修改吗?没错,还是compute那。

    注意这时候就是compute after _page_了,注意,我用了footnote;取消脚注,要不然前面的脚注会继续影响输出.

    _page_应该是SAS默认的分页变量,但是奇怪的是脚注只在最后一页出现,其他页是空的,可是before page为什么可以每页都出现,compute after _page_;这个_page_可能要换成其他变量,问题先留在这。花了很久写这篇文章。

    三线表差不多就是这样,一般公司输出的模板跟我现在输出的大同小异,接下来就是修改一些列表的样式那些。

    相关文章

      网友评论

        本文标题:123:proc report(五讲)--加横线以及一些新的选项

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