У меня есть текстовый файл, подобный этому примеру:
пример:
chr12 58146000 58146050 79 chr12 58145961 58146075 CDK4
chr12 58146050 58146075 81 chr12 58145961 58146075 CDK4
chr12 69082750 69082800 57 chr12 69082741 69082833 NUP107
chr12 99038450 99038479 81 chr12 99038300 99038479 IKBIP
chr12 104680862 104680887 512 chr12 104680862 104680887 TXNRD1
chr12 104682708 104682750 134 chr12 104682708 104682818 TXNRD1
Я хочу сгруппировать их на основе столбца 8 и суммировать значения столбца 4, которые принадлежат той же группеи результаты будут разделены табуляцией с двумя столбцами.первый столбец - это числа, которые делаются после суммирования (из 4-го столбца), а 2-й столбец - это имя группы (из 8-го столбца).Я попробовал следующий код, но он не возвращает то, что я хочу.Вы знаете, как это исправить?
cut -d'\t' -f 8 | sort | uniq -c | awk '{ print sum($4), $8 }' infile > outfile
вот ожидаемый результат:
ожидаемый результат:
160 CDK4
57 NUP107
81 IKBIP
646 TXNRD1