我是一名刚刚开始学习SAS的菜鸟级人物,在运用SAS时,出现了如下问题,请高手给予指点,不胜感激!
* EpiData在输出时创建了两个文件
* C:\Users\Administrator\Desktop\SAS格式\gxysc.rec
*
* 1. C:\Users\Administrator\Desktop\SAS格式\gxysc.sas
* 是SAS命令文件
* 2. C:\Users\Administrator\Desktop\SAS格式\gxysc.txt
* 是含有原始数据的ASCII码文本文件.
*
* 在提交任务前,可以修改命令文件. ;
DATA gxys(LABEL="输入完成3333333333");
INFILE "C:\Users\Administrator\Desktop\SAS格式\gxysc.txt";
INPUT
BLBH 1-3 YXCLCSD1 4-6
SSYPJD1 7-11 .1 SZYPJD1 12-16 .1
YLCD1 17-22 .2 SSYDYD1 23-28 .2
SZYDYD1 29-34 .2 SSMIND1 35-37
SSMAXD1 38-40 SZMIND1 41-43
SZMAXD1 44-46 YXCLCSN1 47-49
SSYPJN1 50-54 .1 SZYPJN1 55-59 .1
YLCN1 60-65 .2 SSYDYN1 66-71 .2
SZYDYN1 72-77 .2
/ SSMINN1 1-3 SSMAXN1 4-6
SZMINN1 7-9 SZMAXN1 10-12
ABTBZ1 13-18 .2 AYWBZ1 19-24 .2
ARBZC1 25-29 .2 ARBZC2 30-34 .2
AYBZC1 35-39 .2 AYBZC2 40-44 .2
AZSPJ1 45-47 AZSPJ2 48-50
AZYLC1 51-56 .2 AZYXCLB1 57-61 .1
AXY1 62-64 AXY2 65-67 NFD2 68-72 .2
/ NZYL2 1-7 .2 SQKNS2 8-12 .2
SZYL2 13-18 .2 BXY1 19-21 BXY2 22-24
NFD3 25-29 .2 NZYL3 30-36 .2 SQKNS3 37-41 .2
SZYL3 42-47 .2 CXY1 48-50 CXY2 51-53
NFD4 54-58 .2 NZYL4 59-65 .2 SQKNS4 66-70 .2
SZYL4 71-76 .2
/ DXY1 1-3 DXY2 4-6 NFD5 7-11 .2
NZYL5 12-18 .2 SQKNS5 19-23 .2
SZYL5 24-29 .2 EXY1 30-32 EXY2 33-35
YXCLCSD2 36-38 SSYPJD2 39-43 .1
SZYPJD2 44-48 .1 YLCD2 49-54 .2
SSYDYD2 55-60 .2 SZYDYD2 61-66 .2
SSMIND2 67-69 SSMAXD2 70-72
SZMIND2 73-75 SZMAXD2 76-78
/ YXCLCSN2 1-3 SSYPJN2 4-8 .1
SZYPJN2 9-13 .1 YLCN2 14-19 .2
SSYDYN2 20-25 .2 SZYDYN2 26-31 .2
SSMINN2 32-34 SSMAXN2 35-37
SZMINN2 38-40 SZMAXN2 41-43
BBTBZ1 44-48 .2 BYWBZ1 49-53 .2
BRBZC1 54-58 .2 BRBZC2 59-63 .2
BYBZC1 64-68 .2 BYBZC2 69-73 .2
BZSPJ1 74-76
/ BZSPJ2 1-3 BZYLC1 4-9 .2
BZYXCLB1 10-14 .1 YJWCQK 15 ZYYLNFDZ 16-22 .2
SQKNSZL 23-29 .2;
LABEL
BLBH="病例编号blbh"
YXCLCSD1="有效测量次数yxclcsd1"
SSYPJD1="收缩压平均ssypjd1"
SZYPJD1="舒张压平均szypjd1"
YLCD1="压力差ylcd1"
SSYDYD1="收缩压≥140mmHgssydyd1"
SZYDYD1="舒张压≥90mmHgszydyd1"
SSMIND1="收缩压最小值ssmind1"
SSMAXD1="收缩压最大值ssmaxd1"
SZMIND1="舒张压最小值szmind1"
SZMAXD1="舒张压最大值szmaxd1"
YXCLCSN1="有效测量次数yxclcsn1"
SSYPJN1="收缩压平均ssypjn1"
SZYPJN1="舒张压平均szypjn1"
YLCN1="压力差ylcn1"
SSYDYN1="收缩压≥140mmHgssydyn1"
SZYDYN1="舒张压≥90mmHgszydyn1"
SSMINN1="收缩压最小值ssminn1"
SSMAXN1="收缩压最大值ssmaxn1"
SZMINN1="舒张压最小值szminn1"
SZMAXN1="舒张压最大值szmaxn1"
ABTBZ1="白天比值abtbz1"
AYWBZ1="夜晚比值aywbz1"
ARBZC1="日标准差arbzc1"
ARBZC2="/"
AYBZC1="夜标准差aybzc1"
AYBZC2="/"
AZSPJ1="总数平均azspj1"
AZSPJ2="/"
AZYLC1="总压力差azylc1"
AZYXCLB1="总有效测量次数百分比azyxclb1"
AXY1="生命体征:血压平均值axy1"
AXY2="/"
NFD2="用药情况:尼福达nfd2"
NZYL2="(mg/日) 总用量nzyl2"
SQKNS2="(mg)双氢克尿噻sqkns2"
SZYL2="(mg/日) 总用量szyl2"
BXY1="生命体征:血压平均值bxy1"
BXY2="/"
NFD3="用药情况:尼福达nfd3"
NZYL3="(mg/日) 总用量nzyl3"
SQKNS3="(mg)双氢克尿噻sqkns3"
SZYL3="(mg/日) 总用量szyl3"
CXY1="生命体征:血压平均值cxy1"
CXY2="/"
NFD4="用药情况:尼福达nfd4"
NZYL4="(mg/日) 总用量nzyl4"
SQKNS4="(mg)双氢克尿噻sqkns4"
SZYL4="(mg/日) 总用量szyl4"
DXY1="生命体征:血压平均值dxy1"
DXY2="/"
NFD5="用药情况:尼福达nfd5"
NZYL5="(mg/日) 总用量nzyl5"
SQKNS5="(mg)双氢克尿噻sqkns5"
SZYL5="(mg/日) 总用量szyl5"
EXY1="生命体征:血压平均值exy1"
EXY2="/"
YXCLCSD2="有效测量次数yxclcsd2"
SSYPJD2="收缩压平均ssypjd2"
SZYPJD2="舒张压平均szypjd2"
YLCD2="压力差ylcd2"
SSYDYD2="收缩压≥140mmHgssydyd2"
SZYDYD2="舒张压≥90mmHgszydyd2"
SSMIND2="收缩压最小值ssmind2"
SSMAXD2="收缩压最大值ssmaxd2"
SZMIND2="舒张压最小值szmind2"
SZMAXD2="舒张压最大值szmaxd2"
YXCLCSN2="有效测量次数yxclcsn2"
SSYPJN2="收缩压平均ssypjn2"
SZYPJN2="舒张压平均szypjn2"
YLCN2="压力差ylcn2"
SSYDYN2="收缩压≥140mmHgssydyn2"
SZYDYN2="舒张压≥90mmHgszydyn2"
SSMINN2="收缩压最小值ssminn2"
SSMAXN2="收缩压最大值ssmaxn2"
SZMINN2="舒张压最小值szminn2"
SZMAXN2="舒张压最大值szmaxn2"
BBTBZ1="白天比值bbtbz1"
BYWBZ1="夜晚比值bywbz1"
BRBZC1="日标准差brbzc1"
BRBZC2="/"
BYBZC1="夜标准差bybzc1"
BYBZC2="/"
BZSPJ1="总数平均bzspj1"
BZSPJ2="/"
BZYLC1="总压力差bzylc1"
BZYXCLB1="总有效测量次数百分比bzyxclb1"
YJWCQK="研究完成情况yjwcqk"
ZYYLNFDZ="研究期间总用药量zyyl尼福达nfdzyl"
SQKNSZL="(mg)双氢克尿噻sqknszl";
run;
data zb;
INPUT block rand group blbh $ x1 @@;
CARDS;
PROC SORT DATA=gxys;BY blbh;RUN;/*注意数据库名字 每个药不一样*/
PROC SORT DATA=ZB;BY blbh;RUN;
{DATA QDATA;
MERGE gxys zb ; BY blbh;RUN;}出现错误的一步,
下面是该部分结果显示;
367 DATA QDATA;
368 MEGRE gxys zb ; BY blbh; RUN;
ERROR: 变量 BLBH 已定义为字符型和数值型。
请问我该怎么修改上面的程序?