2024年3月24日发(作者:)

938

中国卫生统计

2019

12

月第

36

卷第

6

SAS

利用

RTF

语言输出报表

南京医科大学公共卫生学院生物统计学系

(211166)

钟玲珑娄冬华

对于临床研究所需报告

鉴于图表的可读性和可

需提前设置色组

背景色设置命令

clcbpatN

1

采用

RTF

语言修饰过的表格

1

人口信息

(

FAS)

编辑性一般采用的是

WORD/RTF

形式编辑报告

SAS

软件作为目前临床研究公认的统计分析软件之

其表格的输出方法和输出表格的可读性

美观程度

十分重要

目前较多采用的是

SAS

自带的输出过程

(

Proc

Report

)

及模板的调试

(

Proc

Template

)

现⑴

且为使输出方便编制成相应输出宏

2

统计表

格格式在药企

/CRO

(全称

Contract

Research

Organiza-

tion)

内部制定一套标准化

可读性好

美观的报表十

分必要

过程步

Proc

Report

常使用部分

RTF

言⑶

对报告输出格式进行控制

为达到同在

RTF

直接编辑报表所能达到的效果

本文讨论另一种

SAS

输出方法

使用

SAS

软件结合

RTF

语言⑷

创建出更

为灵活的统计表格输出

并创建

SAS

使得

SAS

出相对于使用

SAS

过程步

Proc

Report

更为简便

RTF

语言规则介绍

富文本格式

(

RTF)

规范是为了便于在应用程序之

间轻松转储格式化文本和图形的一种编码方法

RTF

文件由未格式化本文

控制字

控制符和组组成

控制

字形式为

字母序列

控制符由一个反斜线

跟随

单个非字母字符组成

组由包括在

中的文本

制字或控制符组成⑷

SAS

采用

RTF

书写规则可达

到直接控制统计表格输出单元格的效果

1.

SAS

采用

RTF

语言输出

RTF

的基本考虑

单个统计表格可主要分为设置

RTF

基本属性和

输出统计图表

设置

RTF

基本属性包括

(

1)

设置

RTF

后文采用的标准表示法和格式化

一般可采用

ANSI(

American

National

Standards

Institute

)

(2)

设置

后文可能采用的字体

字体大小

颜色等属性

(

3)

义输出纸张大小

页边距

(

4)

设置页眉

页脚

输出

统计图表包括:标题表头和统计图表内容

2.

采用

RTF

语法的输出结果举例

若需要在表格中进行单元格表框的线条

背景颜

色等独立单元格设置

可采用

RTF

语言

预先设置

RTF

色组和单元格边框类型

边框粗细

可达到细致

定制

RTF

效果

下边框线条设置命令

clbrdrbbrdrs

brdrwN,

上边框

左右边框设置命令类似

背景颜色

△通信作者

娄冬华

,

E-mail

:

loudonghua@

sohu.

com

人口信息基线特征

姓名

性另

IJ

年龄

身高体重

阿尔弗雷德

14

69

112.5

威廉男

15

66.5

112

3.

RTF

输岀功能实现的主体语句

在统一输出格式的基础上编写

RTF

输出宏

下文

将介绍该输出功能的

SAS

程序的主体部分

设置

RTF

基本属性和输岀统计图表

设置

RTF

基本属性

(1)

RTF

起始结构

设置

RTF

采用标准及输出文

档采用的字体

rtfl

ansi/

*

rtf

起始

rtf

语言

ansi

:

设置

RTF

采用

ANSI

标准

*

/

deff

j

fonttbl/

*

deff

j

fonttbl

设置

RTF

所采

用的字体

*/

j

fl

ffroman

charsetO

fprg2

Times

New

Ro

­

man

j

j

f2dbchcharsetOfprg2

fcbtefccfe5

9

}/

*

宋体

*/

1

(2)

若对

RTF

有颜色控制,需设置相应的色组以

便正文的引用

{

colortbl

redO

greenO

blueO

redO

greenO

blue255

.......

(

(3)

设置

RTF

输出纸张

以纵向

A4

纸的设置为

以缓为单位

页面宽为

11907,

高为

16840,

marglN

margrN

margtN

margbN

为设置纸张的页边距

paperw

11907

paperh

16840

marglN

margrN

margtN

margbN

(4)

设置脚注

包括脚注的位置

字体

内容

以下

图列脚注为例

13MAR201

8

09

20

南京医科大学

Page

1

of

I

包括设置脚注的位置

文本内容

字体

段落属性

本例采用当前

RTF

生成日期及

RTF

自动页码域引

基于

RTF

的页面

页边距

设置脚注的宽度

cellxN

cellxN

.......

;

采用

SAS

自动宏变量

Chinese

Journal

of

Health

Statistics

,

Dec.

2019

,

Vol.

36

,

No.

6

&sysdate9systime

设置

RTF

生成时间

采用

RTF

指令

{

PAGE

|

)

NUMPAGES

!

设置自动页码

j

footer

pard

plain

trowd

trgaph20

trql

cellxNcellxN

cellxN

pard/

*

脚注设置

3

个单

元格

*

/

qlwidctlparintbl

fi0f3

fsl6

b0il

&sysdate9

:

&systime

i0

cellpard/

*

RTF

生成时间

*

/

qc

widctlpar

intbl

fiO

f3

fsl

6

bO

i

1

南京医科

大学

i0

cellpard/

*

RTF

生成单位

*

/

qrwidctlpar

intbl

fi0

f3

fsl6

b0

il

Page

)

field)

*

fldinst

{

PAGE

HI

of

j

field)

*

fldinst

{

NUMPAGES

}

i

}

i0

cellpard/

*

RTF

页码

*

/

widctlpar

intbl

row

pard

}

(5)

输出统计图表

输出统计图表内容可分为:标题

表头

表格内容

和表格对应的脚注

输岀图表内容

可把除表格内容

外的信息处理成相应宏变量

以便宏编辑

需注意标

题大纲级别的设置

表格边框线宽

每页输出行数等细

节问题

2

为测试实例

所采用的

SAS

程序见附录

1

宏见附录

2

2

人口信息

(FAS)

姓名

人口信息

基线特征

性别

年龄

身高

体重

阿尔弗雷德

14

69

112.5

爱丽丝

13

56.5

84

芭芭拉

13

65.3

98

凯露

14

62.8

102.5

亨利

14

63.5

102.5

詹姆斯

12

57.3

83

12

59.8

84.5

雅妮特

15

62.5

112.5

杰弗瑞

13

62.5

84

约翰

12

59

99.5

乔伊斯

11

51.3

50.5

茱迪

14

64.3

90

罗伊斯

12

56.3

77

玛丽

15

66.5

112

菲利普

16

72

150

罗伯特

12

64.8128

罗纳德

15

67

133

托马斯

11

57.5

85

威廉

15

66.5

112

*

:年龄

=

(

知情日期-出生日期

+

1

)/365.

25

,

取整

SAS

的数据输出还可借用

SAS

DDE

数据交换技

术⑸

将结果输出至

excel

CSV

等外部文件

这类

外部文件可较好的展示数据清单

但对于统计汇总表

的表现和阅读习惯仍无法很好的满足

若不采用

RTF

语言编译

直接采用输出至

TXT

文档

对于后期

撰写统计报告

总结报告需要摘录表格时

可能岀现文

字移位

文字过长导致换行的问题

表格不容易利用和

调整

Proc

Report

可以较好的实现输出功能卩⑷

受限于

SAS

对于过程步语法设置量

,

仍存在如单元

939・

格背景颜色设置

自动页码生成及更新等细节上较难

实现

利用

RTF

语法

设计相对固定结构的表格能在

RTF/WORD

中有很好的输出表现

同时

运用域指

令可高效的对输出文档进行二次编辑

能更方便的完

成文档合并

目录生成的功能

RTF

语法的不足主要为语法较为复杂

语法的开

放性不易于培养人员掌握

对于输出宏的制定者有一

定的

RTF

语言基础要求.输出模板及宏的制定也使得

输出的灵活性受到限制

确定好表格的输出规范

RTF

输出宏就显得尤为重要

对宏程序进行深度

的测试

确保输出宏不会影响数据结果

笔者总结一

些心得体会

(

1

)

设置标题的大纲级别有利于后期对

RTF

的域引用。

(

2)

设置页眉

脚注是尽量采用域指

令,以避免页码等岀错的可能

(

3)

宏编辑过程中考

虑到后期表格合并

在编写代码时可预先设置好标记

代码以便后期自动合并程序的利用标记

参考文献

[1

]

李宏田

刘建蒙•直接输出科研论文统计表格的

SAS

宏.中国卫生

统计

,2010,27(6)

653-655.

[2

]

潘俊霞.疫苗临床试验中盲态核査结果自动化输出的SAS

可视化

实现

.2017

年中国卫生统计学学术年会论文集.

[3

]

魏永越

赵杨

柏建岭

等.

SAS

ODS

RTF

标记语言在临床试验

规范化统计报表输出中的应用.中国卫生统计

,2010,27(4)

:428-

430

+433.

[4

]

RaTFink.

Rich

Text

Format.

2014.

[5

]

Publishing

S.

Base

SAS

9.

2

Procedures

Guide

:

Statistical

Proce

­

dures.

SAS

Publishing,

2008.

[6]

熊勇超

夏兰芳,宋渝丹

,

等.

Tagsets.

ExcelXP

语句在

SAS

导出到

Excel

的方法应用.中国卫生统计

,2016,33(2)

:336-338.

[7]

田晓燕

.SAS

DDE

技术在统计报告自动化中的应用

//

全国卫

生统计学术会议

.2004.

[8

]

Hadden

LS.

Turn

the

Tables

on

Boring

Reports

with

SAS?

9.

2

and

RTF

Tagset

Options.

[9

]

Publishing

S.

SAS/STAT

9.

2

User's

Guide:

Statistical

Graphics

U-

sing

ODS-Book

Excerpt.

SAS

Publishing,

2009.

[10]

Ahsan

K,Lee

J

M,Johnson

K.

SAS

ODS

RTF

OUTPUT

Methods.

附录

1:

OPTIONORIENTATION

=

portrait

ps

=

30

%

let

headerl

=

!!

clcb

人口信息”

!

clcb

基线特征

*

!

%

let

header2

=

!

ql

姓名

!

qc

性别

!

年龄

身高!体重!;

%

let

mystyle

=

20

10

10

10

10

footnote

1

注:年龄

=

(

知情日期-出生日期

+

1

)/365.

25

,

取整;

titlel

2

人口信息

(FAS)

%

rtfreport

(

inset

=

sashelp.

class

,

headrow

=

2

,

filetype

=

rtf,

ostyle

=

&mystyle

,

file

=

RTF

file

path

2

,

append

=

new

,

lstyle

=

lcccc

)

附录

2

940

*

宏变量定义

*

headerl

,header2

.......

:需要在宏执行之前定义好

*

mystyle

:

需要在宏执行之前定义好

*

*

&_columnl

&_column2

&_column5

:每列长度

*

&_columnCl

&_columnC2

&_columnC5

:每列单元格右边界

*

&_columnT

:

mystyle

的总列长

*

<8^columnN

:数据集总列数

*

&_vnameN

:变量名字

*

TITLE

表格标题

*_FOOTn

脚注数量

*_FOOT&

:脚注文本

*

_cellh&h

:

header

定义的列数

*

_paperw

:

页宽;

_paperh

:

页高

*

_footcell

:

脚注位置

*

_maxpw

:

除去页边距后宽度

*

*

&&header&

I.

N

HEADERx

单元格数

*

HxCx

对应

HxCx

的右边界宽度

*

VHxCx

对应

HxCx

的值

*

*************************/

%

macro

rtfreport

(

inset

=

A,

headrow

=

,

filetype

=

rtf,

ostyle

=

&mystyle

,

file

=

, append

=

new

,

lstyle

=

lcccc

)

%

local

_oriopt

_paperw

_paperh

_footcell

_maxpw

_headem

_col-

num

_TITLE

%

let

_oriopt

=

%

sysfunc

(

getoption(

NOTES

))

%

sysfunc

(

getop-

tion

(

mprint

))

option

nonotes

nomprint

filename

test

"

Mile.

.

&filetype"

/

*

处理

&nset,

加上

libname

*

/

%

IF%

SYSFUNC

(INDEX

(

&

nset,.

))=0%

then%

let

inset

=

WORK.

&

nset

data

_null_

set

SASHELP.

VCOLUMN

where

UPCASE

(

libname

)

=

UPCASE

(

scan

(

&nset

,

1

,

:

0

)

and

UPCASE

(

memname

)

=

UPCASE

(

scan("

&nset"

,2/

0

)

;

/

*

数据集变量-

_vnameN

*

/

call

symput(

cats(

Ivname

vamum)

,

name)

*/

数据集变量数

S-_celldn/

*

call

symput(

IcolumnNcats

(

_n_

))

run

%

DO

I

=

1

%

TO&_columnN

%

let

_lstyle&i.

=

%

substr

(

&

style

,

&.

,

1

)

%

END

proc

sql

noprint

/

*

表格标题

*

/

中国卫生统计2019

12

月第

36

卷第

6

select

STRIP

(

text

)

into:

_TITLE

from

sashelp.

VTITLE

where

type

=

X

T

z

%

let

.TITLE

=

&.TITLE

/

*

脚注数量・

_FOOTn

*

/

select

count

(

*

)

into

_FOOTn

from

sashelp.

VTITLE

where

type

=

'

F

'

/

*

脚注-

_FOOT&

*

/

%

do

i

=

l%to

select

STRIP

(text)

into

_FOOT

&

from

sashelp.

VTITLE

where

type

F'and

number

=

&

%

let

_FOOT&

&&_FOOT&i

%

end

quit

/

*

header

定义的列数

*

/

data

_null_

%

do

h

=

1%

to

(

&headrow

call

symput(

"

_cellh&h"

, cats

(

length

(

compress

(

"

&&header&h

"

,

'

!

a

mi

))

%

end

run

%

do

h

=

1%

to&headrow

%

if&&_cellh&h

ne

&_columnN

%

then%

do

*/

提示

header

定义的列数和实际数据集中的列数是否匹配

*/

%

put

WARNING

:

header&h

has

&&_cellh&h

columns

while

data

has

&_columnN

columns.

%

end

%

end

*

/

定义页面设置

*

/

%

if

sysfunc

(

getoption

(

ORIENTATION

)

)

=

"

LAND

­

SCAPE"

%

then%

do

%

let

_paperw

=

16840

%

let

_paperh

=

11907

%

let

_footcell

=

cellx4737

cellx9474cellxl4248

/

*

分配给

mystyle

的长度

*

/

%

let

_maxpw

=

%

eval(

&_paperw.

-1296

*

2)

%

end

%

else%

if

*

%

sysfunc

(

getoption

(

ORIENTATION

))

=

H

POR

­

TRAIT"

%

then%

do

%

let

_paperw

=

11907

%

let

_paperh

=

16840

%

let

_footcell

=

cellx3104

cellx6209

cellx9315

/

*

分配给

mystyle

的长度

*

/

%

let

_maxpw

=

%

eval(

paperw.

-1296

*

2)

%

end

/

*

mystyle

计算

column

的长度

定义每个

cell

的右边距

*/

DATA

_NULL_

Chinese

Journal

of

Health

Statistics

,

Dec.

2019

,

Vol.

36

, No.

6

length

var

$

20

_columnT

=0

DO

UNTIL(

var

=

call

symput(

"

_mystyleN"

,cats(

K)

)

K

+

l

var

=

SCAN

("

&mystylen

,

K

,

J

call

symput(

"

_column"

I

I

cats(

K)

,

STRIP

(

var)

)

if

not

missing

(

var)

then

_columnT

=

_columnT

+

input

(

var,

best

)

call

symput(

'

*

_columnT"

,cats(_columnT)

)

END

RUN

%

if&_mystyleN

ne

columnN

%

then%

do

*

/

提示

mystyle

定义的列数和实际数据集中的列数是否匹配

*

/

%

put

WARNING:

mystyle

has

&_mystyleN

columns

while

data

has

&_columnN

columns.

%

end

DATA

_NULL_

%

DO

1

=

1%

TO&_mystyleN

_TCOL=0

%DO

K

=

1%TO&

_TCOL

=

SUM(_TCOL,

column/)

%

END

call

symput(

"

_columnC"

I

I

cats

(

&

)

,

cats

(

int

(

_TCOL/&_

columnT

*

&_maxpw

)))

%

END

RUN

/

*

定义

header

cell

右边距

-start

*

/

%

DO

I

=

1%

TO

&

headrow

%

let

header

(

8d.

N

=

%

eval

(

%

sysfunc

(

count

(

"

&S«EADER

.

))」

)

%

END

DATA

_NULL_

length

var

$

200

RETAIN

he

0

%

DO

H

=

1%

TO

Aheadrow

%

DO

J

=

1

%

TO

&Sdieader&H.

N

var

=

SCAN

(

TRANWRD

(

"

&SHEADER

/

!

J

!

HEADER_CELL

=

&J

IF

=

1

THEN

HC

=

count(var,^

0

ELSE

HC

=

HC

+

count(var/"

0

;

HEADER_CELLx

=

SUM(

HC

,

)

/

*

HxCx,

对应

HxCx

的右边界宽度

*

/

CALL

SYMPUT(

'

H

J

CATS

(

)

I

P

C

z

l

I

CATS

(

HEADER.

CELL)

/_columnC

1

I

CATS

(

HEADER_CELLx

))

941

/

*

VHxCx,

对应

HxCx

的文本

*/

CALL

SYMPUT(

'

VH

1

I

CATS

(

)

I

I

'

C

J

I

CATS

(

HEADER_CELL)

,STRIP(

var)

)

OUTPUT

%

END

%

END

RUN

/

*

定义

header

cell

右边距

-end

*

/

option

notes

data

_null_

file

test

set

&INSET.

end

=

end

/

*

STEP1

:设置页面

页脚

*/

IF

_N_

=

1

THEN

DO

*

/

rtf

起始

rtf

语言

;ansi

促使

rtf

阅读器早期版本

/*

的兼容性

*

/

deff

设置接下来文本的字体

*

/

f

*

/

l

f2

f3

f4

f5

f6

控制的几种字体

/*

put

"

|

rtfl

ansi"

put

M

deff

|

fonttbl

n

put

n

|

fl

fmodemfcharsetOfprq

1

Courier

New

"

put

"

|

f2

ffroman

charsetO

fprg2

Times

New

Ro­

man

)

put

{

f3

ffswisscharsetO

fprg2

Arial

|

"

put

"

j

f4

dbch

charsetO

fprg2

fcbtefccfe5

9

|

"

put

}

*/

信息组包含了文档的相关信息

这些信息包括:

标题

作者

关键字

注释和文件的其它特定信息

*/

put

11

|

info

put

"

|

title

创建

RTF

|

put

"

|

author

南京医科大学|

;

put

"

j

company

南京医科大学}

;

/

*

C010rtbl

用于标明颜色表组

*

/

put

"{

colortbl

redO

greenO

blueO

redO

greenO

blue255

redO

green255

blue255

redO

green255

blueO

red255

greenO

blue255

red255

greenO

blueO

red255

green255

blueO

"

put

"

red255

green255

blue255

redO

greenO

bluel28

redO

green

128

blue

128

redO

green

128

blueO

red

128

greenO

blue

128

redl28

greenO

blueO

redl28

green

128

blueO

"

put

redl28

greenl28

bluel28

red

192

green

192

bluel92

red255

green255

blue255

cbackgroundonectint255

cshadel91

redl91

greenl91

bluel91

|

H

put

h

r

*

*

/

paperwl6840paperhl

1907

:

控制页宽页高

*

/

/

*

widowctrl

允许孤行

;*

/

942

*

/

ftnbj

页底的脚注(底对齐)

*

/

*

/

fet0

脚注/

尾注类型

o

sectd

重新设置为默认的

节属性

lndscpsxn

页方向为横向格式

*

/

*

/

linex

行编号与左边文字的距离(单位:缓

默认

360)

。自动距离为

0

*

/

/

*

margl,margr,

margt

,

margb

:

以缓为单位的左

边距

右边距

、上边距、

下边距

*

/

put

"

paperw

(

S^paperw.

paperh

(

S^paperh

"

put

H

margll296"

put

"

margrl296"

put

"

margt432"

put

"

margb288"

put

"

(

footer

pardplain"

put

"

trowdtrgaph20trql"

put

"

&_footcell.

pard"

put

"

qlwidctlparintblfiOf3fsl

6bOil

&sysdate9

:

&systime

i0

cell

pard"

put

"

qcwidctlparintblfi0f3fsl6b0il

南京医科

大学

i0

cellpard

n

/

*

'field

控制域引用

;fldinst

域指令引用

*/

put

"

qr

widctlpar

intbl

fiO

f3

fsl

6

b0

il

Page

|

field)

*

fldinst

|

PAGE

||

I

of

|

field

(

*

fldinst

{

NUMP

­

AGES

|

|

|

i0

cellpard"

put

"

widctlparintbl

rowpard"

put

H

I

";

*/

最前面放了下面三行

*/

put

"

|

*

startlOOOO|

"

END

S

*

/

TEP2

设置表头

/*

IF

_N_

=

1

OR

(

_N_-1

)/(

%

sysfunc

(

getoption

(

ps

)))

=

INT

((

_

N_-l

)/(

%

sysfunc(

getoption

(

ps

))))

THEN

DO

/

*

接下来是表头和正文内容

*

/

IF

_N_

=

1

THEN

DO;

/

*

put

"

fsl6parpardfi0f3fs24bl

sl

<ITLEpar"

*

/

put

n

fsl6pardfi0f3fsl6blsl

^TITLEpar

n

END

ELSE

DO

put

"

fsl6parpardfi0f3fsl6bl

&_TITLE(Contin

­

ue)

par";

END

put

pard"

put

"

pard"

*/

设置三线表边宽

*/

/

*

clbrdrt

:

上边框

brdrs

单倍厚度边框八

brdrw30

绘制段落边线的画笔宽度

不超过

75

*/

/

*

clbrdrb

:

下边框

brdrs

:

单倍厚度边框

brdrw30

:

绘制

段落边线的画笔宽度

,不超过

75

*/

中国卫生统计

2019

12

月第

36

卷第

6

%

DO

1

=

1%

TOtSbeadrow

put

"

trowdtrgaph20trql";

%DO

K

=

l%TO&&header&I.

N

%

IF%

SYSFUNC

(

INDEX

(

C&K.

.,

J

)

>0

AND

NE

Aheadrow

%

THEN%

LET

_clbrdrb

=

clbrdrb

brdrsbrdrwl5

%

ELSE%

IF

EQ

&headrow

%

THEN%

LET

_

clbrdrb

=

clbrdrb

brdrs

brdrw30

%

ELSE%

LET

.clbrdrb

=

%

IF&I

=

1

%

THEN%

LET

_clbrdrt

=

clbrdrt

brdrsbrdrw30

%

ELSE%

LET

_clbrdrt

=

%

IF%

SYSFUNC

(INDEX

(&&&&VH&1.

.

,

clcb)

)

>

0%

THEN%

LET

_clcb

=

clcbpatl8

%

ELSE%

LET

_clcb

=

put

"

&

_

clbrdrt.

&

_

clbrdrb.

&

_

clcb.

也.

C

G

.

%

END

put

"

pard"

%

DO

K

=

l%

TO&Sdieader&i.

N

%

LET

_VHC

=

%

SYSFUNC

(

TRANWRD

(&&&&VH&I.

C&K..

,",))

put

"

qcwidctlparintbl

HOf3fsl6bOil

&_

VHC.

i0

cellpard"

%

END

put

"

widctlpar

intbl

row

pard"

%

END

END

S

*

/

TEP3

设置正文

/*

/

*

正文

cell

*

/

IF

END

=

1

OR

_N_/%

sysfunc

(

getoption

(

ps)

)

=

INT

(

_N

_/%

sysfunc

(

getoption

(

ps)

))

THEN

DO

put

"

trowdtrgaph20trql"

%

DO

I

=

1

%

TO&_columnN

PUT

"

clbrdrb

brdrs

brdrw30

cellx&&

_

columnC&i"

%

END

END

ELSE

DO

put

"

trowdtrgaph20trql"

%

DO

1

=

1%

TO

columnN

PUT

"

cellx&&_columnC

&”

%

END

END

put

"

pard"

/

*

正文内容

*

/

%

DO

1

=

1%

TO&_columnN

(下转第

946

页)

946

Chinese

Journal

of

Health

Statistics

,

Dec.

2019

,

Vol.

36

,

No.

6

錄⑺大致相同

死亡中位年龄分别为直肠癌

71.25

直肠癌

68.

05

本文通过实例介绍了

R

软件

BaSTA

包在贝叶斯

框架下

对捕获-再捕获数据集进行年龄别生存分析的

方法

借助该包对患者进行生存分析,可有效分析现

有的临床医学数据,给出患者的生存参数估计值

并进

行可视化展示

具有广泛的应用价值

参考文献

[1

]

Colchero

F

,

Jones

OR

,

Rebke

M.

BaSTA

an

R

package

for

Bayesian

estimation

of

age-specific

survival

from

incomplete

mark-recapture/

1.0

0.8

recovery

data

with

co

variates.

Methods

in

Ecology

&

Evolution

,

2012,3(3)

466470.

[2

]

Gelfand

A

,

Smith

AM.

Sampling-Based

Approaches

to

Calculating

Marginal

Densities.

Journal

of

the

American

Statistical

Association

,

1990,85(410)

:398409.

[3

]

Spiegelhalter

D

,

Best

N,Carlin

B

,

et

al.

Bayesian

measuresof

model

40

60

年龄

80

100

120

complexity

and

fit.

Journal

of

the

Royal

Statistical

Society

:

Series

B

,

Statistical

Methodology

,2002,64(4)

583-639.

[4

]

Gompertz

B.

On

the

nature

of

the

function

expressive

of

the

law

of

7

不同患癌部位肠癌患者的年龄别生存率曲线图

3.

结论分析

肠癌患者整体死亡率随着年龄的增长而增长

human

mortality

,

and

on

a

new

mode

of

determining

the

value

of

life

contingencies

:

in

a

letter

to

Francis

Baily

,

Esq.

F.

R.

S.

&c.

.

Philo

­

sophical

Transactions

of

the

Royal

Society

of

London

,

1825

,

115

(2)

:513-583.

死亡中位年龄为

71.55

不同性别肠癌患者的死亡

率均随着年龄的增长而增长

其中男性患者的年龄别

死亡率高于女性患者

这与李德錄⑺

,王宁⑻等人得

到的结论相同

死亡中位年龄分别为女性

71.65

男性

69.

25

不同患癌部位的肠癌患者死亡率均随着年龄的增

[5

]

Vaupel

JW

,

Stallard

ME.

The

impact

of

heterogeneity

in

individual

frailty

on

the

dynamics

of

mortality.

Demography

,

1979

,

16

(

3

)

439-

454.

[6

]

Pletcher

SD.

Model

fitting

and

hypothesis

testing

for

age-specific

mor

­

tality

data.

Journal

of

Evolutionary

Biology

,1999,12(3)

430-439.

[7]

李德錄

吴春晓

郑莹

等.上海市

2003

-2007

年大肠癌发病率和

长而增长

其中大约在

60

岁之前

直肠癌患者的年龄

死亡率分析•中国肿瘤

,2011,20(6)

:413418.

[8

]

王宁

孙婷婷,郑荣寿

等.中国

2009

年结直肠癌发病和死亡资料

别死亡率低于结肠癌患者

60

岁之后

直肠癌患者

的年龄别死亡率高于结肠癌患者

得到的结果与李德

分析•中国肿瘤

,2013,22(7)

:515-520.

(责任编辑:刘壮)

(上接第

942

页)

%IF&I

=

l%then%do

if

substr

(

&&_vname<53

,1,1)

=

""

thenput

"

q&&_

END

IF

_N_/%

sysfunc

(

getoption (

ps

))

=

INT

(

_N_/%

sysfunc

(

ge­

toption

(

ps)))

AND

NOT

END

THEN

DO

lstyle&I.

widctlpar

intbl

fiO

f3

fsl6

bO

"

&&_

vname&[

$500.

"

b0

i0

cellpard"

else

put

"

q&&_lstyle&I.

widctlpar

intbl

fiO

f3

fsl6

bl

vname

$500.

"

b0

i0

cellpard"

put

"

page"

put

"

qi

widctlpar

H0f2fs2

par"

END

STEP4

*

/

rtf

结束

*

/

%

END

%

ELSE%

DO

put

"

q&SUstyle&i.

widctlpar

intbl

fiO

f3

fs

16

bO

"

&&_vname&I

"

b0

i0

cellpard";

IF

END

THEN

DO

%

DO

1

=

1%

TO

FOOTn

put

fi0f3fsl6b0

FOOT&parpard

%

END

put

"

pard"

put

"

qc

widctlpar

fiOf2fs2

par

*

end

100001

|

"

END

RUN

%

END

%

END

put

"

widctlpar

intbl

row

pard"

/

*

STEP3

:

设置脚注

/*

IF

_N_/%

sysfunc

(

getoption

(

ps)

)

=

I

NT

(

_N_/%

sysfunc

(

ge

­

toption

(

ps

)))

THEN

DO

%

DO

1

=

1%

TO&_FOOTn

option

&_oriopt

%

MEND

(责任编辑:郭海强)

put

"

fiOf3fsl6bO

&&_FOOT&parpard

%

END