楼主: sean1945
3803 4

求助:批量文本数据进行重复测量分析,如何转换数据格式? [推广有奖]

  • 0关注
  • 3粉丝

已卖:276份资源

博士生

74%

还不是VIP/贵宾

-

威望
0
论坛币
1047 个
通用积分
87.3837
学术水平
3 点
热心指数
3 点
信用等级
3 点
经验
15949 点
帖子
214
精华
0
在线时间
455 小时
注册时间
2007-11-4
最后登录
2024-1-7

楼主
sean1945 发表于 2010-3-9 10:34:32 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
有批量.txt数据文件(10几年的数据)存于 "d:\sean\"中,每个.txt文本均包含三个变量:Date   LightrrapData  ModelPrediction,其中LightrrapData  ModelPrediction为两种处理方式下的数据,



我想对这两种处理作不同时间间隔的重复测量分析,很多参考书上说导入数据集里的格式是这样的
group  data              day
1          1                     0
1          1                     9
1          5                     11
1          4                     12
1          2                     13
1          2                     14
2          0.0014             0
2          0.0000             9
2          0.0000             11
2          0.0000             12
2          0.0002             13
2          0.0003             14

我不知道如何转化为这种格式的数据集,即把.TXT文本里的后面两列按时间合并为一列,分别用1和2代表两种处理名称。day为实际调查日期相对于第一次调查(1980/6/3)的时间差。请问如何将数据在数据集里显示为上述格式?

单个.txt(假如按上述格式转化后)重复测量分析代码如下:

/* 数据步待求*/

/* 过程步:*/
  Proc Mixed     covtest Method= Reml;
    Class grade;
    Model Y=grade day grade*day /ddfm=satterth;   /* /Htype=1*/
    Repeated  / TYPE=UN;
                                                                                  /*Lsmeans grade time grade*time /tdiff pdiff;*/
Title 'Fit Unstructured Covariance';
Run;

还有,能否对所有.txt文件批量进行Repeated  analysis?

请各位大侠不吝赐教!谢谢!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:数据格式 重复测量 文本数据 unstructured Prediction 求助 数据 格式 文本 批量

回帖推荐

bobguy 发表于2楼  查看完整内容

For the question days, you can use either intck function or minus of two days as long as they are SAS dates(numeric integer). I am not clear about your other questions. 6 data _null_; 7 x='15jun1980'd; 8 days=intck('day','3jun1980'd,'15jun1980'd); 9 days2 = '15jun1980'd - '3jun1980'd; 10 put x= yymmdd10. days days2; 11 run; x=1980-06-15 12 12 NOTE: DAT ...

jingju11 发表于4楼  查看完整内容

3# sean1945

本帖被以下文库推荐

他大舅他二舅都是他舅,高桌子低板凳都是木头

沙发
bobguy 发表于 2010-3-9 10:49:37
sean1945 发表于 2010-3-9 10:34
有批量.txt数据文件(10几年的数据)存于 "d:\sean\"中,每个.txt文本均包含三个变量:Date   LightrrapData  ModelPrediction,其中LightrrapData  ModelPrediction为两种处理方式下的数据,



我想对这两种处理作不同时间间隔的重复测量分析,很多参考书上说导入数据集里的格式是这样的
group  data              day
1          1                     0
1          1                     9
1          5                     11
1          4                     12
1          2                     13
1          2                     14
2          0.0014             0
2          0.0000             9
2          0.0000             11
2          0.0000             12
2          0.0002             13
2          0.0003             14

我不知道如何转化为这种格式的数据集,即把.TXT文本里的后面两列按时间合并为一列,分别用1和2代表两种处理名称。day为实际调查日期相对于第一次调查(1980/6/3)的时间差。请问如何将数据在数据集里显示为上述格式?

单个.txt(假如按上述格式转化后)重复测量分析代码如下:

/* 数据步待求*/

/* 过程步:*/
  Proc Mixed     covtest Method= Reml;
    Class grade;
    Model Y=grade day grade*day /ddfm=satterth;   /* /Htype=1*/
    Repeated  / TYPE=UN;
                                                                                  /*Lsmeans grade time grade*time /tdiff pdiff;*/
Title 'Fit Unstructured Covariance';
Run;

还有,能否对所有.txt文件批量进行Repeated  analysis?

请各位大侠不吝赐教!谢谢!
For the question days, you can use either intck function or minus of two days as long as they are SAS dates(numeric integer).
I am not clear about your other questions.


6    data _null_;
7      x='15jun1980'd;
8      days=intck('day','3jun1980'd,'15jun1980'd);
9      days2 = '15jun1980'd -  '3jun1980'd;
10     put x= yymmdd10. days days2;
11     run;

x=1980-06-15 12 12
NOTE: DATA statement used (Total process time):
      real time           0.01 seconds
      cpu time            0.00 seconds
已有 1 人评分经验 论坛币 收起 理由
bakoll + 3 + 3 精彩帖子

总评分: 经验 + 3  论坛币 + 3   查看全部评分

藤椅
sean1945 发表于 2010-3-9 13:49:22
bobguy,  thankyou fou your help.
about my quesitions,
when i import  the .txt datas from "d:\sean\" , it created a dataset as follows:

Date       LighttrapData     ModelPrediction
1980-06-03   1       0.0014
1980-06-12   1       0
1980-06-14    5      0
1980-06-15    4      0
... ...
1980-09-19    48   2.8819

because my procdue of the Repeated analysis of unequally dates, the form should be  the following one:
group  data              day
1          1                     0
1          1                     9
1          5                     11
1          4                     12
1          2                     13
1          2                     14
2          0.0014             0
2          0.0000             9
2          0.0000             11
2          0.0000             12
2          0.0002             13
2          0.0003             14
how can I change the initial data into this form?  Can you show me the code? thankyou!
他大舅他二舅都是他舅,高桌子低板凳都是木头

板凳
jingju11 发表于 2010-3-10 07:27:10
3# sean1945


  1. DATA ORIGINAL;
  2. INPUT Date YYMMDD10.       LighttrapData     ModelPrediction;
  3. FORMAT DATE YYMMDD10.;
  4. DATALINES;
  5. 1980-06-03   1       0.0014
  6. 1980-06-12   1       0
  7. 1980-06-14    5      0
  8. 1980-06-15    4      0
  9. 1980-06-16    2      0.0002
  10. 1980-06-17    2      0.0003
  11. ;
  12. DATA NEW;
  13. DO UNTIL(Eof0);
  14.   SET ORIGINAL END = Eof0;
  15.   FIRST_DATE = MIN(DATE, FIRST_DATE);  
  16. END;
  17. DO UNTIL(Eof1);
  18.   SET ORIGINAL END = Eof1;
  19.   DAY = DATE-FIRST_DATE;
  20.   GROUP = 1; DATA = LIGHTTRAPDATA;
  21.   OUTPUT;
  22.   GROUP = 2; DATA = MODELPREDICTION;
  23.   OUTPUT;
  24. END;
  25. KEEP GROUP DAY DATA;
  26. PROC SORT; BY GROUP DAY;
  27. RUN;
复制代码
已有 1 人评分经验 论坛币 收起 理由
bakoll + 3 + 3 精彩帖子

总评分: 经验 + 3  论坛币 + 3   查看全部评分

报纸
sean1945 发表于 2010-3-10 09:20:10
4# jingju11
Your code works well, thanks very much for your kind!  
I  got a lot of from the bbs.
Also thanks to 2# bobguy!
他大舅他二舅都是他舅,高桌子低板凳都是木头

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-6 00:46