The merging of people who could not correctly enter names and id #s has been discontinued. All spelling variants and new id #’s are treated as separate entries. A human will need to make judgements about the merging. The ability to enter the menu name from the command line has been added using the watcom fortran version of this feature. Sorting is by name and section, but people are the same only if the id #’s are equal in addition to the names. GMERGE.zip
The older version is in oGMERGE.zip
Gmerge once ran on the CMS system used by the NERDC. The CMS features are present in versions
before
Re-compilation will probably be necessary for almost all departments. This is due to the fact that every professor has his favorite grading scheme. The option of linear scaling of each exam before adding is part of the general menu. The options of dropping the lowest, the lowest two, or the lowest except the final are already on the menu page. In addition there are a number of grading schemes named for their inventors.
The file cgmerge.bat is set up to compile using M.S. Fortran 5.1. The simple command line fl32 gmerge.for gmread.for rnumb.for is in the file fl32gmerge.bat which uses the MS power station to compile.
The Watfor compiler can both edit and compile this code. Edit gmerge.for, then issue the command run /exe to produce gmerge.exe. This is the best debugger.
The file gmerge.wpj can be opened by the Watcom ide and used to both compile and edit gmerge. OpenWatcom is available from http://www.openwatcom.org.
Go to ../GMERGE and click on GMERGE.EXE to bring up a dos window with the line
ENTER THE GMERGE MENU
NAME
erika
The erica name is the generic name for a sequence of exams named erika1, erika2 and erika3. It is also the name erika.mnu which gmerge creates so that after the first use, the menu lines stay the same. A <cr> leads to
1 RESULTS GO IN FILE erika GRA
FNAME EXT WT,0 WT,,1
2 Reg (csv) or grade erikaREG GRA ISC = 0 + 1 TIMES SCORE+.5
3 INPUT GRADE FILE erika1 GRA ISC = 0 + 1 TIMES SCORE+.5
4 INPUT GRADE FILE erika2 GRA ISC = 0 + 1 TIMES SCORE+.5
5 INPUT GRADE FILE -------- GRA ISC = 0 + 1 TIMES SCORE+.5
6 INPUT GRADE FILE -------- GRA ISC = 0 + 1 TIMES SCORE+.5
7 INPUT GRADE FILE -------- GRA ISC = 0 + 1 TIMES SCORE+.5
8 INPUT GRADE FILE -------- GRA ISC = 0 + 1 TIMES SCORE+.5
9 SORT RESULTS BY SECTIONS YES
10 USE DEFAULT GRADES YES
12 SHOULD BE 0 TO INCLUDE ALL SCORES IN GRADE
1 TO DROP LOWEST SCORE
2 TO DROP LOWEST SCORE EXCLUDING LAST
3 TO DROP LOWEST SCORE EXCLUDING LAST 2
4-MUTALG,5-DETERG,6-IPSEG
12 0
ENTER THE LINE NUMBER,CHANGE,CHANGE, TO CHANGE A LINE
ENTER LINE NUMBER, WT, A, B, TO CHANGE THE WTS
ENTER (CARRIAGE RETURN <CR> TO MERGE AND GRADE OR S TO STOP
Line 1 tells the user that the results will be found in the file erica.gra.
Line 2 hints that there should be a registrars file named erikaREG.csv. If this is the case the directions at the bottom of the page say to enter
2,,csv
to change the extension on the file to csv. This is important the code identifies a registrar file by this extension. If there is no registrar file, the line needs to be changed to give the name of the output of the first grade run. Then the next two in the same way.
2,erika1
3,erika2
4,erika3
Suppose that on the third exam, it is desired to give the students 10 points for simply showing up and to add to this twice the actual score. The command is
4,WT,10,2
This produces a menu ready to go.
1 RESULTS GO IN FILE erika GRA
FNAME EXT
WT,0
WT,,1
2 Reg (csv) or grade erika1 GRA
ISC = 0 +
1 TIMES SCORE+.5
3 INPUT GRADE FILE erika2
GRA ISC = 0
+ 1 TIMES SCORE+.5
4 INPUT GRADE FILE erika3
GRA ISC = 10
+ 2 TIMES SCORE+.5
5 INPUT GRADE FILE -------- GRA ISC = 0
+ 1 TIMES SCORE+.5
6 INPUT GRADE FILE -------- GRA ISC = 0
+ 1 TIMES SCORE+.5
7 INPUT GRADE FILE -------- GRA ISC = 0
+ 1 TIMES SCORE+.5
8 INPUT GRADE FILE -------- GRA ISC = 0
+ 1 TIMES SCORE+.5
9 SORT RESULTS BY SECTIONS YES
10 USE DEFAULT
GRADES YES
12 SHOULD BE 0 TO INCLUDE ALL SCORES IN GRADE
1 TO DROP LOWEST SCORE
2 TO DROP LOWEST SCORE EXCLUDING
LAST
3 TO DROP LOWEST SCORE EXCLUDING
LAST 2
4-MUTALG,5-DETERG,6-IPSEG
12 0
ENTER THE LINE NUMBER,CHANGE,CHANGE,
TO CHANGE A LINE
ENTER LINE NUMBER, WT, A, B, TO CHANGE THE WTS
ENTER (CARRIAGE RETURN <CR> TO MERGE AND
GRADE OR S TO STOP
Entering <cr> produces #Results1. The above menu is missing an item 11. It goes straight from 10 to 12. After looking at the results and the histogram the “correct” cutoffs are entered by changing item 10 to NO
10,NO
1 RESULTS GO IN FILE erika GRA
FNAME EXT
WT,0
WT,,1
2 Reg (csv) or grade erika1 GRA
ISC = 0 + 1
TIMES SCORE+.5
3 INPUT GRADE FILE erika2
GRA ISC = 0
+ 1 TIMES SCORE+.5
4 INPUT GRADE FILE erika3
GRA ISC = 10
+ 2 TIMES SCORE+.5
5 INPUT GRADE FILE -------- GRA ISC = 0
+ 1 TIMES SCORE+.5
6 INPUT GRADE FILE -------- GRA ISC = 0
+ 1 TIMES SCORE+.5
7 INPUT GRADE FILE -------- GRA ISC = 0
+ 1 TIMES SCORE+.5
8 INPUT GRADE FILE -------- GRA ISC = 0
+ 1 TIMES SCORE+.5
9 SORT RESULTS BY SECTIONS YES
10 USE DEFAULT
GRADES NO
THE HIGHEST GRADES FOR E, D, D+,
C, C+, B, B+, A
11 0 0 0 0 0 0 0 0
12 SHOULD BE 0 TO INCLUDE ALL SCORES IN GRADE
1 TO DROP LOWEST SCORE
2 TO DROP LOWEST SCORE EXCLUDING
LAST
3 TO DROP LOWEST SCORE EXCLUDING
LAST 2
4-MUTALG,5-DETERG,6-IPSEG
12 0
ENTER THE LINE NUMBER,CHANGE,CHANGE,
TO CHANGE A LINE
ENTER LINE NUMBER, WT, A, B, TO CHANGE THE WTS
ENTER (CARRIAGE RETURN <CR> TO MERGE AND
GRADE OR S TO STOP
Well now the grade points are a bit to generous, everyone gets an A. Looking at #grade_cut_offs it is obvious that
11,25,35,45,52,58,64,65,100
1 RESULTS GO IN FILE erika GRA
FNAME EXT
WT,0
WT,,1
2 Reg (csv) or grade erika1 GRA
ISC = 0 + 1
TIMES SCORE+.5
3 INPUT GRADE FILE erika2
GRA ISC = 0
+ 1 TIMES SCORE+.5
4 INPUT GRADE FILE erika3
GRA ISC = 10
+ 2 TIMES SCORE+.5
5 INPUT GRADE FILE -------- GRA ISC = 0
+ 1 TIMES SCORE+.5
6 INPUT GRADE FILE -------- GRA ISC = 0
+ 1 TIMES SCORE+.5
7 INPUT GRADE FILE -------- GRA ISC = 0
+ 1 TIMES SCORE+.5
8 INPUT GRADE FILE -------- GRA ISC = 0
+ 1 TIMES SCORE+.5
9 SORT RESULTS BY SECTIONS YES
10 USE DEFAULT
GRADES NO
THE HIGHEST GRADES FOR E, D, D+,
C, C+, B, B+, A
11 25 35
45 52 58 65 65 100
12 SHOULD BE 0 TO INCLUDE ALL SCORES IN GRADE
1 TO DROP LOWEST SCORE
2 TO DROP LOWEST SCORE EXCLUDING
LAST
3 TO DROP LOWEST SCORE EXCLUDING
LAST 2
4-MUTALG,5-DETERG,6-IPSEG
12 0
ENTER THE LINE NUMBER,CHANGE,CHANGE,
TO CHANGE A LINE
ENTER LINE NUMBER, WT, A, B, TO CHANGE THE WTS
ENTER (CARRIAGE RETURN <CR> TO MERGE AND
GRADE OR S TO STOP
are much more reasonable
Table 1 Actual grade distribution from this menu
SCORES LESS THAN OR EQUAL TO 25 RECEIVED E
SCORES BEGINNING WITH 26 UP TO AND INCLUDING 35 RECEIVED D
SCORES BEGINNING WITH 36 UP TO AND INCLUDING 45 RECEIVED D+
SCORES BEGINNING WITH 46 UP TO AND INCLUDING 52 RECEIVED C
SCORES BEGINNING WITH 53 UP TO AND INCLUDING 58 RECEIVED C+
SCORES BEGINNING WITH 59 UP TO AND INCLUDING 65 RECEIVED B
Table 2 Small part of a registrar file
|
3810 |
32111100 |
ACxxx HAxxx |
|
3811 |
49111110 |
ADxxx MIxxx XX |
|
4936 |
4611110 |
AGxxx Vxxx |
|
3811 |
1311110 |
ALxxx MUxxx Cxxx |
|
3811 |
5211110 |
ALxxx Axxx |
|
3809 |
7211110 |
ALBxxx Txxx Lxxx |
3810,32167200,ACxxx HAxxx
3811,49123860,ADxxx MIxxx XX
4936,4669840,AGxxx Vxxx
The second set of data is the comma separated variables that were downloaded from the registrar. The data in the table is the way that this probably looked in excel after this download. There can be as many columns in the file as are convenient, but the first three must be section number, student id, student name.
I usually set the .gra files to open in notepad. This one can also be opened by excel. The most relevant part of the first pass is #grade_cut_offs. No one has ever agreed with these default cutoffs.
******************
THERE ARE 193 POTENTIALLY DISTINCT STUDENTS HERE
THE AVE OF THE 144 STUDENTS WHO HAD POS FINAL GRADES, IS 50.35417
THE HISTOGRAM INCLUDES THESE ONLY
10 20 30
NUMBER SCORE . 1 2 3 4 5 6 7 8 9 . 1 2 3 4 5 6 7 8 9 . 1 2 3 4 5 6 7 8 9
0 1 :
0 2 :
0 3 :
0 4 :
0 5 :
0 6 :
0 7 :
0 8 :
0 9 :
0 10 :
0 11 :
0 12 :
0 13 :
0 14 :
0 15 :
0 16 :
0 17 :
0 18 :
0 19 :
0 20 :
0 21 :
0 22 :
0 23 :
0 24 :
0 25 :
0 26 :
0 27 :
1 28 :******
1 29 :******
4 30 :***************************
1 31 :******
1 32 :******
0 33 :
3 34 :********************
4 35 :***************************
3 36 :********************
1 37 :******
3 38 :********************
1 39 :******
2 40 :*************
3 41 :********************
3 42 :********************
5 43 :**********************************
1 44 :******
6 45 :*****************************************
5 46 :**********************************
9 47 :*************************************************************
4 48 :***************************
8 49 :*******************************************************
4 50 :***************************
7 51 :************************************************
6 52 :*****************************************
4 53 :***************************
4 54 :***************************
2 55 :*************
3 56 :********************
8 57 :*******************************************************
4 58 :***************************
5 59 :**********************************
3 60 :********************
2 61 :*************
2 62 :*************
3 63 :********************
4 64 :***************************
3 65 :********************
1 66 :******
3 67 :********************
5 68 :**********************************
1 69 :******
0 70 :
0 71 :
0 72 :
0 73 :
0 74 :
0 75 :
1 76 :******
SCORES LESS THAN OR EQUAL TO 31 RECEIVED E
SCORES BEGINNING WITH 32 UP TO AND INCLUDING 42 RECEIVED D
SCORES BEGINNING WITH 43 UP TO AND INCLUDING 44 RECEIVED D+
SCORES BEGINNING WITH 45 UP TO AND INCLUDING 52 RECEIVED C
SCORES BEGINNING WITH 53 UP TO AND INCLUDING 56 RECEIVED C+
SCORES BEGINNING WITH 57 UP TO AND INCLUDING 63 RECEIVED B
SCORES BEGINNING WITH 64 UP TO AND INCLUDING 65 RECEIVED B+
SCORES BEGINNING WITH 66 UP TO AND INCLUDING 76 RECEIVED A
0, 310111100,nrl, ABxx EC , 7, 7,****,****,****,****,**** ,X
0, 35111100,nrl, ADxxx JB , 17, 18, 32,****,****,****, 67 ,A
0, 46111100,nrl, AGxxxx V , 12, 7, 28,****,****,****, 47 ,C
0, 131111100,nrl, ALxxxx MC , 15, 14, 30,****,****,****, 59 ,B
The nrl means that this student is not in the registrar’s list
– applies to all in this run. When the
registrar’s list is present and the ordering is not by section, these people
will be very close to their actual names.
With the correct id number, they will be merged.
Occasionally there is a duplicate name in the input grade file. This can be caused by two students with the same last name and initials. This is flagged at the top of the gmerge output file, jrb.gra, as shown in table 1
Table 3 Duplicates in the grade file
TROUBLE WITH nrl,Bxxxxx XX
DUPLICATED IN jrb1f03.GRA
ADJ SCORES ARE 6 15
REG ID 511111111 2nd IN LIST IS 0
Bxxxxx did not have his middle initial in the registrar’s list. The gra file has his social security number, rather than his student id. This kept the result from going into the registrar’s list of names and accounts for the nrl, on line one in the above table. The second line in the above table is the name of the gra file in which this problem first occurs. This problem needs to be corrected and the code re-run.
Table 4 Mergers
FOLLOWING PEOPLE MERGED
0 0ANxxxxx Z XX -9999 5
6206 41111111ANxxxxxZ XX 6-9999
******************
Gmerge attempts to merge people with missing exams on the basis of similar spelling and appropriate missing exams. ANxxxxx Z left a blank in the last name on exam1 and then filled it in on exam 2. Had the student id been entered on exam 1, the error would have been corrected by comparing student id’s, and the name would not appear here. The code merges the two people into one and the resulting output is
6206, 41111111,,ANxxxxxZ Xxxxxxx Xxx, 6, 5,****,****,****,****, 11 ,D
In this list the section number, id, and name are from the registrar’s list.
The code
does not need to be re-run if this is correct, but it has happened that students were incorrectly merged.
Table 5 Not in registrar’s list
3812, 31111111,,Wxxxxxxxxx Exxxxxxxxx ,****,****,****,****,****,****,**** ,I
0, 511111111,nrl, Wxxxxxxxxx EA , 8, 4,****,****,****,****, 12 ,D+
This item appears with a complete middle name and no middle initial in the registrar’s list. In addition the social security number has been entered on the exam rather than the student id. Either dropping the middle initial or changing the id number on the gra list will cause this result to be merged with the registrar’s list. Correcting this and re-running is recommended owing to the fact that if there are many corrections, it is easy to forget one. It is, however, relatively easy with an editor or notepad to correct this error.