Háttér. Mint a legtöbb szoftvernél, a CogStat (CS) esetében is van egy automatikus ellenőrző programunk, amely minden új kiadás előtt megnézni, hogy a CS helyesen számolja-e ki az eredményeket. Ehhez van egy adatsorunk és egy sor elemzés, amit az ellenőrző program lefuttat, és megnézni, hogy a CS még mindig azt az eredményt számlja-e ki, amit elvárunk. És azt várjuk el, amit más programok is kihoznának eredményként az adott adatsorra és elemzésre. Ezért van szükség arra, hogy megnézzük, hogy egyes elemzésekre más szoftverek, milyen eredményt számolnak ki.
A teszt adatokról és a teszt elemzésekről. Az oldal alján található az adatsor, amit a teszteléskor használunk. Az ellenőrző program (script), ami a tesztelést csinálja itt található: https://github.com/cogstat/cogstat/blob/devel/cogstat/test/validate_calculations.py. Itt a 90. sor környékétől kezdődik a lényeg. Mindig szerepel egy results = valami rész, ami valamilyen elemzést kér a CS-tól. Remélhetőleg a kódból kitalálható, hogy mit kér: a data. utáni rész mondja meg, hogy mi a kérdés (egy változó vizsgálata, csoportok összehasonlítása, stb.), és a zárójelben aposztrófok közt van megadva, hogy melyik változókat használjuk. Időnként szerepel néhány egyéb paraméter, remélhetőleg többnyire kitalálható, hogy melyek azok. Majd ezután jönnek olyan sorok, hogy self.assert..., és itt szerepelnek szövegek és számok, amik azt jelenti, hogy ezeket az eredményeket várjuk a kimeneten, mert elvileg ezek a helyesek. Az adott sorok előtt pedig # jel után látható, hogy melyik program melyik változatával milyen eredményt kaptunk.
Eredmények validálása más szoftverrel. A feladat, hogy a teszt elemzéseket lefuttassátok más szoftverekkel, és a megfelelő helyre beírjátok az eredményt. Az oldal alján található adatsor elvileg másolás-beillesztéssel berakható a legtöbb statisztikai szoftverbe. Ezek után neked kell megkeresni, hogy az adott szoftverben hogyan lehet az adott elemzést elvégezni. A validáló szoftver által kiszámolt eredményt pedig írd be a tesztelő scripbe. Technikailag csak töltsd le a validáló program fájlját, nyisd meg bármilyen szövegszerkesztővel, és abba írd bele az új szoftverre vonatkozó eredményeket. Minden ilyen sorba rakd be a monogramod a sor végére, és onnan tudom majd, hogy melyik sorokat raktad te be. Ha kész a feladat, akkor ezt a módosított .py fájlt küldd majd el nekem.
A feladat az, hogy ahol a fenti ellenőrző scriptben a self.assert sor előtt nem szerepel olyan sor, ami megadná, hogy az adott elemzésre más szoftver milyen eredményt adna, akkor azt ki kell számolni, és bevinni a fájlba. Ha az adott self.assert fájl előtt már szerepel más szoftverre vonatkozó eredmény, de te másik szoftverrel való validálást végzel, akkor a te szoftveredre vonatkozó adatokat is fel kell vinni. Ha az adott elemzés nem érhető el a validáló szoftverben, akkor írj NA-t arra a helyre, ahová a kiszámított eredményed kerülne.
Elvileg a CS-től elvárt eredmény ugyanaz kellene legyen, mint amit más programoknál látunk. Néhol azonban a CS eredménye eltérhet más szoftverétől, és ez sokszor szándékos. Ezek némelyikéről van is leírás a CS dokumentációjában: https://doc.cogstat.org/Differences-in-calculations-between-CogStat-and-other-programs Némely más eltérésről a fenti ellenőrző program kódjában vannak megjegyzések. Ha azt látod, hogy a CS másként számol, mint a te szoftvered, akkor írj oda egy megjegyzést. Ha netán azt is tudod, hogy miért számol másként (pl. milyen változatot használ az egyik és a másik szoftver), akkor azt is odaírhatod, de ez opcionális.
További infó. A feladat leírásának néhány részlete megtalálható a test_stat.py fájl elején is az import részek után, illetve néhol hasznos információk szerepelnek a fájlban a # jelek után.
A teszteléshez használt adatsor
a b c d e f g h i j k l m n o p q r s
0 3.445 15.702 0.0 1.0 3.104 8.238 4.930 -5.250 1.0 1.0 1.0 -0.547 1.0 1.0 1.852 7.002 1.0 -0.349 -13.428233
1 4.060 17.008 2.0 1.0 2.141 14.041 7.693 8.789 0.0 1.0 0.0 3.889 1.0 2.0 6.732 -3.659 1.0 3.826 102.985120
2 -0.262 1102.876 0.0 1.0 2.484 3.582 8.408 3.519 1.0 1.0 1.0 3.249 1.0 2.0 1.702 1.191 1.0 3.435 64.272700
3 3.741 9.061 1.0 2.0 1.554 5.558 9.929 6.795 0.0 1.0 0.0 1.519 1.0 2.0 0.265 1.626 1.0 7.663 164.448453
4 2.529 2289.004 0.0 0.0 1.706 4.174 1.472 -7.085 0.0 0.0 0.0 -1.375 1.0 2.0 5.984 5.925 1.0 -3.444 -79.661560
5 4.311 564.067 2.0 2.0 6.213 5.715 6.407 9.422 1.0 0.0 1.0 -0.582 1.0 2.0 -1.113 -0.057 1.0 2.649 61.307080
6 0.461 18.739 2.0 0.0 10.130 3.003 3.874 7.349 1.0 0.0 0.0 2.173 1.0 2.0 1.479 3.788 1.0 0.528 18.060360
7 9.500 210.706 1.0 0.0 0.896 4.281 10.111 3.633 1.0 0.0 1.0 8.369 1.0 2.0 8.320 7.300 1.0 8.712 178.047240
8 4.003 0.697 2.0 2.0 3.606 2.912 4.501 18.771 0.0 1.0 0.0 4.328 1.0 2.0 8.140 6.855 1.0 2.373 74.963640
9 1.866 87.791 1.0 2.0 2.295 16.458 7.015 19.450 1.0 1.0 0.0 3.931 1.0 2.0 -2.327 6.029 1.0 7.476 203.658640
10 4.789 7.167 0.0 1.0 6.196 7.438 -0.752 10.636 0.0 0.0 1.0 4.823 1.0 2.0 8.414 6.478 2.0 6.663 116.888640
11 9.160 0.163 0.0 2.0 2.155 2.854 6.336 7.670 1.0 0.0 1.0 0.368 1.0 2.0 -1.838 8.894 2.0 6.033 138.787200
12 2.880 18.265 0.0 1.0 -0.309 2.228 7.261 0.729 1.0 1.0 0.0 7.723 1.0 2.0 -0.011 5.539 2.0 5.391 108.441180
13 1.270 80.701 0.0 1.0 3.004 4.015 4.397 3.338 1.0 1.0 0.0 -2.142 1.0 2.0 5.030 0.072 2.0 5.621 102.754753
14 2.817 1177.480 0.0 2.0 2.095 4.927 9.368 3.943 1.0 0.0 1.0 2.248 1.0 2.0 4.378 3.605 2.0 7.356 149.984120
15 5.993 5.383 1.0 0.0 4.039 3.693 6.660 4.803 1.0 0.0 1.0 3.520 2.0 2.0 0.959 -5.975 2.0 7.409 170.665813
16 8.325 0.451 2.0 2.0 5.870 5.781 2.146 9.453 1.0 1.0 1.0 1.174 2.0 2.0 2.734 7.186 2.0 -0.119 7.683073
17 -1.014 3.516 0.0 2.0 5.825 3.247 8.161 2.947 0.0 1.0 0.0 4.055 2.0 2.0 12.313 1.455 2.0 1.966 30.418573
18 5.395 0.726 2.0 2.0 3.604 2.726 4.925 2.896 1.0 0.0 1.0 6.195 2.0 2.0 19.284 9.064 3.0 10.741 244.854927
19 -2.289 1.016 0.0 1.0 7.673 2.239 1.012 8.148 1.0 1.0 0.0 9.976 2.0 2.0 3.893 4.881 3.0 1.727 45.888707
20 2.206 76.687 1.0 1.0 -3.616 11.663 8.319 13.888 0.0 0.0 0.0 7.676 2.0 2.0 6.432 16.469 3.0 7.376 131.117227
21 2.829 2.873 1.0 0.0 -0.338 1.883 2.536 10.667 0.0 1.0 0.0 3.602 2.0 2.0 1.509 -4.643 3.0 2.407 56.817213
22 -2.803 3.099 0.0 0.0 1.408 4.370 4.978 6.758 0.0 0.0 0.0 6.572 2.0 2.0 40.497 1.393 3.0 10.607 240.819133
23 -1.486 501.308 0.0 2.0 -0.774 1.851 8.718 -2.255 0.0 1.0 1.0 -0.217 2.0 2.0 3.817 -1.394 3.0 9.854 165.328693
24 3.136 3.773 1.0 0.0 1.617 5.135 9.203 9.888 1.0 0.0 1.0 3.461 2.0 2.0 31.534 14.284 3.0 5.034 102.647840
25 9.981 0.868 2.0 2.0 2.134 2.018 2.403 0.755 0.0 1.0 0.0 6.083 2.0 2.0 82.679 4.364 3.0 6.314 143.830240
26 4.413 3.059 0.0 0.0 2.509 10.131 8.727 13.423 1.0 0.0 0.0 2.556 2.0 2.0 18.217 5.841 3.0 9.039 160.698440
27 0.139 13.684 0.0 0.0 7.827 2.947 0.186 -0.745 0.0 1.0 1.0 2.359 2.0 2.0 25.358 -4.746 3.0 10.240 190.606467
28 2.486 711.179 0.0 1.0 6.557 8.728 9.308 17.613 1.0 1.0 1.0 4.778 2.0 2.0 3.217 10.952 3.0 5.471 98.109647
29 2.432 31.064 0.0 1.0 -0.098 5.207 3.653 7.411 0.0 1.0 0.0 6.848 2.0 2.0 49.939 -2.133 3.0 8.084 195.822093