Cactus.hui 发表于 2012-12-20 13:20

请大家帮忙看看那,我是入门。。

我的作业是要把 DEMO_F 和SMQ_F 这两个data 做数据处理。。谢谢大家~~我不太确定我做的对不对,让大家帮忙看看
分别作 PROC CONTENTS, FREQUENCEY, MERGE, CREATE NEW VARIABLE, CREATE A NEW VARIABLE USING EXISTING DATA,
TWO-VARIABLES T-TEST
(1)
DATA DEMO_F;
INFILE 'C:\Users\huixie\Desktop\DEMO_F.txt' DLM='09'X FIRSTOBS=2 DSD MISSOVER TRUNCOVER;
INPUT SEQN  RIAGENDR RIDAGEYR RIDRETH1 DMDEUC3 DMDEDUC2 DMDMARTL INDHHIN2;
RUN;
PROC PRINT DATA=DEMO_F;
TITLE 'DEMO_F';
RUN;

DATA SMQ_F;
INFILE 'C:\Users\huixie\Desktop\SMQ_F.txt' DLM='09'X FIRSTOBS=2 DSD MISSOVER TRUNCOVER;
INPUT SEQN SMQ020 SMD030 SMQ040 SMD650 SMQ670;
RUN;
PROC PRINT DATA=SMQ_F;
TITLE 'SMQ_F';
RUN;


(2)
PROC CONTENTS DATA=DEMO_F;
RUN;

PROC CONTENTS DATA=SMQ_F;
RUN;


(3)
ODS GRAPHICS ON;
PROC FREQ DATA=DEMO_F;
TABLES SEQN;
RUN;
PROC FREQ DATA=DEMO_F;
TABLES RIAGENDR;
RUN;
PROC FREQ DATA=DEMO_F;
TABLES RIDAGEYR;
RUN;
PROC FREQ DATA=DEMO_F;
TABLES RIDRETH1;
RUN;
PROC FREQ DATA=DEMO_F;
TABLES DMDEDUC3;
RUN;
PROC FREQ DATA=DEMO_F;
TABLES DMDEDUC2;
RUN;
PROC FREQ DATA=DEMO_F;
TABLES DMDMARTL;
RUN;
PROC FREQ DATA=DEMO_F;
TABLES INDHHIN2;
RUN;

ODS GRAPHICS ON;
PROC FREQ DATA=SMQ_F;
TABLES SEQN;
RUN;
PROC FREQ DATA=SMQ_F;
TABLES SMQ020;
RUN;
PROC FREQ DATA=SMQ_F;
TABLES SMD030;
RUN;
PROC FREQ DATA=SMQ_F;
TABLES SMQ040;
RUN;
PROC FREQ DATA=SMQ_F;
TABLES SMD650;
RUN;
PROC FREQ DATA=SMQ_F;
TABLES SMQ670;
RUN;

(4)
PROC SORT DATA=DEMO_F OUT=DEMO_F_SORTED;
BY SEQN;
RUN;
PROC PRINT DATA=DEMO_F_SORTED;
TITLE 'DEMO_F SORTED';
RUN;
PROC SORT DATA=SMQ_F OUT=SMQ_F_SORTED;
BY SEQN;
RUN;
PROC PRINT DATA=SMQ_F_SORTED;
TITLE 'SMQ_F SORTED';
RUN;

PROC PRINT DATA=DEMO_F_SORTED;
TITLE 'DEMO_F SORTED';
RUN;
DATA DEMOSMQ;
  MERGE DEMO_F_SORTED SMQ_F_SORTED;
  BY SEQN;
RUN;
PROC PRINT DATA=DEMOSMQ;
  TITLE 'COMBINEDDATA';
RUN;

(5)
DATA COMBINEDDATA;
SET DEMOSMQ;
IF RIDAGEYR >= 20 THEN OUTPUT;
RUN;
PROC PRINT DATA= COMBINEDDATA;
RUN;

(6)
DATA COMBINEDDATA1;
SET DEMOSMQ;
EVERSMOKER=.;
IF SMQ020=1 THEN EVERSMOKER=1;
IF SMQ020=2 THEN EVERSMOKER=0;
RUN;
PROC PRINT DATA=COMBINEDDATA1;
RUN;

(8)
DATA COMBINEDDATA3;
SET COMBINEDDATA2;
NEVERMARRIED=.;
IF (1<=DMDMARTL<=4) OR DMDMARTL=6 THEN NEVERMARRIED=0;
IF DMDMARTL=5 THEN NEVERMARRIED=1;
RUN;
PROC PRINT DATA=COMBINEDDATA3;
RUN;

(9)
DATA COMBINEDDATA4;
SET COMBINEDDATA3 (KEEP=SEQN RIAGENDR RIDAGEYR EDUCATION4 RIDRETH1 NEVERMARRIED EVERSMOKER SMD030 SMD650);
RUN;
PROC PRINT DATA=COMBINEDDATA4;
RUN;

(10)
A.
PROC TTEST DATA=DEMOSMQ;
TITLE 'TWO-SAMPLE T-TEST EXAMPLE';
CLASS RIAGENDR;
VAR SMD650;
RUN;
PROC PRINT DATA=DEMOSMQ;
RUN;

B.
TITLE 'p vaule of age with smoking';
PROC CORR DATA=DEMOSMQ;
VAR SMD030 SMD650;
RUN;
PROC PRINT DATA=DEMOSMQ;
RUN;

TITLE 'Scatterplot of age with smoking';
PROC SGPLOT DATA=DEMOSMQ;
REG X=SMD030 Y=SMD650;
RUN;
PROC PRINT DATA DEMOSMQ;
RUN;





厚积薄发 发表于 2012-12-20 13:49

你有没有运行一下?

Cactus.hui 发表于 2012-12-20 14:27

我没有这个软件。。呜呜呜

黑马小子 发表于 2014-1-24 11:18

你运行了吗?另外你的数据呢

糖姑娘。 发表于 2014-1-25 09:39

噢,no,表示没怎么看懂怎么破

糖姑娘。 发表于 2014-1-25 09:40

楼主改完了要把结果共享下啊

糖姑娘。 发表于 2014-1-25 09:40

我们程序都有现成的,一般不怎么临时编
页: [1]
查看完整版本: 请大家帮忙看看那,我是入门。。