我从下表中获得了特定试验的样本记录:
Personid Trial orgid Orgtypeid
90 106 72001 4
682 106 188787 4
717 106 187761 4
830 106 64776 4
845 106 71795 3
1130 106 215441 22
1199 106 25148 22
1488 106 84256 4
1656 106 31456 22
2427 106 71864 22
2535 106 40687 3
2558 106 93306 4
2792 106 114207 18
3105 106 13967 22
3267 106 22634 18
3352 106 22
3516 106 9847 12
3981 106 2341 4
3993 106 126593 3
4025 106 29789 4
4395 106 75068 3
4433 106 17622 3
4662 106 45286 4
4887 106 18350 22
5272 106 46979 18
5381 106 82499 3
5518 106 72958 3
5593 106 93363 3
5634 106 49553 18
5686 106 82504 22
6036 106 79250 3
6047 106 46228 4
6260 106 52492 4
6365 106 31196 3
6443 106 1980 4
6492 106 72940 3
6539 106 45287 4
6641 106 124592 4
6659 106 184510 4
6768 106 3950 4
7172 106 93065 22
7183 106 71916 4
7285 106 181783 22
8030 106 31044 4
8071 106 84539 22
8350 106 73263 4
8395 106 14974 4
8612 106 33084 12
8785 106 52983 4
8837 106 18335 4
8852 106 182042 3
8902 106 191396 3
8909 106 44678 12
8982 106 19
9318 106 149996 4
9538 106 31827 4
9570 106 85130 4
10028 106 159192 18
10105 106 38784 4
10226 106 80419 4
10459 106 79827 22
10518 106 71836 12
10733 106 71876 4
10843 106 78913 4
10853 106 140548 22
10880 106 71923 4
11301 106 72020 4
11522 106 33167 3
11595 106 71624 22
11699 106 91917 4
11714 106 93150 3
12200 106 34207 4
12226 106 71649 4
12308 106 136005 4
12832 106 71841 4
13468 106 71580 4
13745 106 92433 4
13907 106 164068 3
13935 106 39943 3
14122 106 130995 3
14146 106 101833 18
14520 106 38050 4
14542 106 39616 4
14560 106 85695 3
14712 106 95460 4
14806 106 30621 22
15479 106 72778 4
15549 106 130557 3
15790 106 39652 4
15982 106 52193 3
16046 106 62592 4
16064 106 75808 18
16268 106 51957 12
16908 106 78731 4
17198 106 53941 3
17248 106 44436 18
17830 106 80244 4
18585 106 396 22
18621 106 77528 4
18723 106 35721 22
19112 106 4928 4
19413 106 172057 3
19729 106 10096 3
19772 106 181063 3
19774 106 9858 4
19849 106 213470 4
19880 106 184341 4
20051 106 10388 3
20330 106 964 22
20337 106 162349 4
20574 106 216255 4
20619 106 42352 4
20666 106 10830 4
20746 106 19308 3
21123 106 114302 22
21190 106 41878 22
21261 106 33084 4
21264 106 84340 3
21651 106 52210 4
21682 106 167293 3
21775 106 80419 4
21930 106 154783 4
22017 106 78213 12
22026 106 11815 4
22924 106 57492 4
23149 106 46928 4
23775 106 141288 22
23831 106 162443 3
24887 106 9831 3
25279 106 71598 3
25357 106 75448 22
25468 106 98249 4
25651 106 4
25807 106 93306 4
26318 106 44212 22
26347 106 1143 3
26551 106 53264 3
27414 106 18
27424 106 126205 4
27556 106 147586 3
27582 106 145836 3
27774 106 7471 3
28004 106 119457 22
28684 106 3058 22
28686 106 16625 3
30026 106 144890 3
30031 106 32934 3
30035 106 40801 4
30039 106 177508 22
30238 106 72646 4
30430 106 82810 4
30471 106 46299 3
30944 106 184183 4
31482 106 42368 4
32296 106 196312 4
33801 106 13704 3
34903 106 347 3
35332 106 206713 3
36386 106 71612 4
38208 106 36293 3
38749 106 77258 18
38827 106 72071 4
39561 106 140106 4
39722 106 46471 3
39849 106 125641 18
40599 106 53061 4
42614 106 28447 18
42691 106 183045 22
43152 106 73580 19
43638 106 10321 3
47110 106 29789 4
47112 106 98308 4
48608 106 45292 4
48856 106 6700 4
48947 106 185045 3
48948 106 73515 4
49642 106 164536 4
49735 106 78342 4
50352 106 75696 12
50353 106 33699 4
51985 106 82265 12
52671 106 142891 4
52777 106 84193 22
52778 106 18406 3
53561 106 11674 3
53563 106 81427 4
53564 106 28320 4
54409 106 27689 4
54411 106 33761 3
54412 106 11695 22
54470 106 39649 4
54858 106 91972 22
55129 106 73820 4
55130 106 11815 22
55566 106 203178 9
55569 106 157517 4
55570 106 124075 4
56871 106 63954 3
57726 106 13484 3
60131 106 75956 3
61074 106 21444 3
61335 106 24403 4
63049 106 42236 3
65447 106 43170 22
65450 106 39728 22
65453 106 22211 22
65454 106 46546 3
67232 106 27052 18
68494 106 47882 3
68495 106 816 22
68936 106 106618 22
70192 106 173595 3
70193 106 115501 22
70197 106 34341 3
72606 106 18418 4
73104 106 144374 19
73685 106 51520 22
74397 106 102254 3
76808 106 44391 18
81334 106 34705 4
82894 106 45223 4
89882 106 154988 3
93661 106 51278 4
100468 106 4
100694 106 45358 18
100722 106 22
100789 106 9
100853 106 3
101307 106 159932 12
101326 106 39675 3
103620 106 48956 3
103668 106 44771 22
104706 106 142662 4
105923 106 76883 10
105961 106 75959 10
106555 106 72111 10
112996 106 71618 10
128637 106 138211 22
170771 106 117977 4
199749 106 72703 22
202961 106 32966 4
348476 106 49553 4
420379 106 21642 22
421422 106 24547 4
此处的人格是该人的身份。 Trailid是我们正在查看的id,orgid是组织的id,orgtypeid是组织的类型。
现在我们想要的是每组trialid(这个例子只有一个trailid,但基表有多个trialid),我想创建6个新变量,如下所示:
Non Academic_fraction_orgs Academic_frac_orgs Others_frac_orgs Non Academic_fraction_ppl Academic_frac_ppl Others_frac_ppl
orgtypeid:9,18,3被分类为学术,而4,22,17被分组为非学术,而剩余被分组为其他。现在我们需要以下变量和以下值:
Non Academic_fraction_orgs: Total orgids in Non-Academic in that trialid/Total Orgids in that trialid
Academic_fraction_orgs: Total orgids in Academic in that trialid/Total Orgids in that trailed
Others_frac_orgs: Total orgids in Other in that trialid/Total Orgids in that trailed
Non Academic_fraction_ppl: Total distinct Personid in Non-Academic in that trialid/Total Orgids in that trailed
Academic_fraction_ppl: Total distinct Personid in Academic in that trialid/Total Orgids in that trailed
依旧......
如何在sql中完成此操作。
编辑:
strorganizationtype是各自orgtypeid的字符串。
select trialid, count(CASE WHEN strorganizationtype in ('Academic Institution - office','Academic Institution - research facility',
'Academic Hospital / Clinic')
THEN 1 ELSE 0 END) /(count(*)*1.0) as Academic_frac_orgs,
count(CASE WHEN strorganizationtype in ('Medical Practice','Clinical Trial Center',
'Rehabilitation/Extended Care Facility','Non-academic Hospital / Clinic')
THEN 1 Else 0 END)/(count(*)*1.0) as Non_Academic_fraction_orgs,
count(CASE WHEN strorganizationtype in ('Company','Other')
THEN 1 ELSE 0 END)/(count(*)*1.0) as Other_fraction_orgs
from table
group by trailid
order by trialid
问题在于计算(例如,'公司','其他'中的strorganizationtype) 那么1 ELSE 0 END)计算该试验的所有记录,而不是属于该特定案例陈述的记录。我需要一个变量,它是属于该组orgs的记录的一小部分,属于该组的总组织。