У меня есть файл, который содержит примеры данных следующим образом:
Student Name,Assignment Type,Assignment Number,Total Earned Points,Total Possible Points
Chelsey,Final,FINAL,82,100
Chelsey,Survey,WS,5,5
Sam,Homework,H01,19,100
Sam,Homework,H02,82,100
Я хочу рассчитать взвешенную оценку (общее количество заработанных баллов, деленное на общее количество возможных баллов) для каждого учащегося и вывести список учащихся,их оценка в процентах и буквенная оценка. Шкала букв оценивается следующим образом:
A = 90 >= grade <= 100
B = 80 >= grade < 90
C = 70 >= grade < 80
D = 60 >= grade < 70
E = grade < 60
Формат вывода:
Name Percent Letter
Chelsey XX.XX *
Sam YY.YY *
Как мне добиться этого в awk? В настоящее время у меня есть сценарий среднего столбца.
awk '
NR>1{
arr[$1] += $4
count[$1] += 1
}
END{
for (a in arr) {
print arr[a] / count[a]
}
}
' FILE