楼主: btpy
2135 7

[原创博文] 这种数据该怎么读入? [推广有奖]

  • 0关注
  • 0粉丝

小学生

78%

还不是VIP/贵宾

-

威望
0
论坛币
79 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
149 点
帖子
16
精华
0
在线时间
2 小时
注册时间
2007-9-6
最后登录
2009-9-10

楼主
btpy 发表于 2009-9-9 07:26:35 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
老师把同样的50个题目, 打乱顺序分成3卷, ABC. A卷的1,2,3题=B卷的3,1,2题=C卷的2,1,3题.其中个位数是4的题位置永远不变. 即4,14,24,34,44在ABC卷都一样.
所以A卷的5,6,7题=B卷的7,5,6题=C卷的6,7,5题.数据把学生50道题的回答分别放在50个变量中, 变量FORM存学生答哪个卷的信息,即ABC. 我怎样才能以A卷的顺序读入所有数据呢?
提前谢谢所有出谋划策的好心人{:3_59:}
二维码

扫码加我 拉你入群

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

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

关键词:出谋划策 form ABC For ORM 好心人 信息

回帖推荐

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

4# btpy 找了半天也没有发现简单的规律,只好。。。

本帖被以下文库推荐

沙发
btpy 发表于 2009-9-9 07:57:07
忘了提一点, 顺序是每3题一变的.

藤椅
jingju11 发表于 2009-9-9 09:53:17
1# btpy

  1. A卷的1,2,3题=B卷的3,1,2题=C卷的2,1,3题....所以A卷的5,6,7题=B卷的7,5,6题=C卷的6,7,5题.
复制代码


前后的规律好像有矛盾

板凳
btpy 发表于 2009-9-9 10:13:35
谢谢指正, 是123-312-231

报纸
jingju11 发表于 2009-9-9 12:13:53
4# btpy

  1. data form;
  2. input id test $;
  3. datalines;
  4. 1 a
  5. 2 b
  6. 3 c
  7. 4 b
  8. ;
  9. run;
  10. proc sort; by id; run;
  11. *generate test scores;
  12. data score;
  13. array v{50} v1-v50;
  14. do id=1 to 4;
  15.   do i=1 to 50;
  16.   v{i}=round(ranuni(1)*2,1);
  17.   end;
  18.   output;
  19. end;
  20. run;
  21. proc sort; by id;
  22. run;
  23. data final;
  24. merge form score;
  25. by id;
  26. array a v1 v2 v3 v4 v5 v6 v7 v8   v9  v10 v11  v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46 v47 v48 v49 v50;
  27. array b v3 v1 v2 v4 v7 v5 v6 v10 v8   v9  v13  v11 v12 v14 v17 v15 v16 v20 v18 v19 v23 v21 v22 v24 v27 v25 v26 v30 v28 v29 v33 v31 v32 v34 v37 v35 v36 v40 v38 v39 v43 v41 v42 v44 v47 v45 v46 v50 v48 v49;
  28. array c v2 v3 v1 v4 v6 v7 v5 v9   v10 v8  v12  v13 v11 v14 v16 v17 v15 v19 v17 v18 v22 v23 v21 v24 v26 v27 v25 v29 v30 v28 v32 v33 v31 v34 v36 v37 v35 v39 v40 v38 v42 v43 v41 v44 v46 v47 v45 v49 v47 v48;
  29. array s va_1-va_50;
  30. do over s;
  31.   if test = 'a' then s=a;
  32.    else if test = 'b' then s=b;
  33.     else if test = 'c' then s=c;
  34. end;
  35. keep id test va_:;
  36. run;
复制代码


找了半天也没有发现简单的规律,只好。。。

地板
jingju11 发表于 2009-9-9 12:16:57
4# btpy

  1. data form;
  2. input id test $;
  3. datalines;
  4. 1 a
  5. 2 b
  6. 3 c
  7. 4 b
  8. ;
  9. run;
  10. proc sort; by id; run;
  11. *generate test scores;
  12. data score;
  13. array v{50} v1-v50;
  14. do id=1 to 4;
  15.   do i=1 to 50;
  16.   v{i}=round(ranuni(1)*2,1);
  17.   end;
  18.   output;
  19. end;
  20. run;
  21. proc sort; by id;
  22. run;
  23. data final;
  24. merge form score;
  25. by id;
  26. array a v1 v2 v3 v4 v5 v6 v7 v8   v9  v10 v11  v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46 v47 v48 v49 v50;
  27. array b v3 v1 v2 v4 v7 v5 v6 v10 v8   v9  v13  v11 v12 v14 v17 v15 v16 v20 v18 v19 v23 v21 v22 v24 v27 v25 v26 v30 v28 v29 v33 v31 v32 v34 v37 v35 v36 v40 v38 v39 v43 v41 v42 v44 v47 v45 v46 v50 v48 v49;
  28. array c v2 v3 v1 v4 v6 v7 v5 v9   v10 v8  v12  v13 v11 v14 v16 v17 v15 v19 v17 v18 v22 v23 v21 v24 v26 v27 v25 v29 v30 v28 v32 v33 v31 v34 v36 v37 v35 v39 v40 v38 v42 v43 v41 v44 v46 v47 v45 v49 v47 v48;
  29. array s va_1-va_50;
  30. do over s;
  31.   if test = 'a' then s=a;
  32.    else if test = 'b' then s=b;
  33.     else if test = 'c' then s=c;
  34. end;
  35. keep id test va_:;
  36. run;
复制代码


找了半天也没有发现简单的规律,只好。。。
已有 1 人评分经验 论坛币 收起 理由
bakoll + 3 + 3 精彩帖子

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

7
btpy 发表于 2009-9-10 10:07:22
太感谢了,
我后来用了4个数组, 一个50,读入所有成绩;一个45,输出个位没有4的45个items;一个3,每次读入3个个位没有4的items;一个3,每次根据form调整一下位置. 调好后输出到45的数组中.
据说可以再减少两个数组. 有时间再试.

8
zeugin 发表于 2009-9-11 12:47:26
提示: 作者被禁止或删除 内容自动屏蔽

9
harepan 发表于 2009-9-12 09:54:13
膜拜一下,题目够晕人的

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

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