Как получить среднее значение по конкретным командам и исключить негативы?

#linux #bash #ubuntu

#linux #bash #ubuntu

Вопрос:

Мне предоставляется текстовый файл, и мне нужно распечатать среднее значение строк, столбцов и конкретных команд в столбцах. Я также должен исключить любые отрицательные значения из среднего.

Вот текстовый файл

 Tom, Red, 5, 17,22
Joe , Green , 3 , 14 ,22
Maria, Blue , 6 , 18 , 21
Fred , Blue , 2 ,15 ,23
Carlos , Red , -1 , 15, 24
  

Вот моя программа усреднения по столбцам строк

 {s=$3 $4 $5; print $1 "t" s/3} #Use awk program teamlist | sort -r -n to get the row average
  

Вот моя программа среднего значения столбца

 {t =$3}
{u =$4}
{v =$5}
 {print "Average for test 1: " t/NR}
 {print "Average for test 2: " u/NR}
 {print "Average for test 3: " v/NR} #Use awk column teamlist | tail -3 to the column average

Here are the results
Average for test 1: 4
Average for test 2: 13
Average for test 3: 20

Tom, 14.6668
Joe, 13
Maria, 15
  

Однако я не уверен, как изменить программу, чтобы awk получал только цвета команды и пропускал отрицательный результат.

Комментарии:

1. вы определенно в пути, но, пожалуйста, отредактируйте свой Q, чтобы показать требуемый результат из вашего образца ввода. Также включите описание того, где вы получаете отрицательные оценки. Удачи.

2. Я добавил выходные результаты.