1
특정 필드를 합산하여 같은 이름을 가진 줄을 축소하려고합니다. 다른 필드에서도 다른 ID가 있는지 확인하고 싶습니다. .의 경우 예를 들어, 내 파일은 다음과 같습니다 :awk를 사용하여 두 개의 다른 필드를 기반으로 열 합계
F1 F2 F3 F4 F5
1 A_1 1 B_1 4
2 A_1 2 B_1 5
3 A_2 4 B_1 2
4 A_3 3 B_2 4
5 A_3 2 B_2 2
6 A_3 1 B_2 1
7 A_4 2 B_2 2
내가 다음과 같이 F5와 F3를 요약하기 위해 F4 값과 F2 값을 확인하려면 : 지금까지
1 A_1 3 B_1 9
3 A_2 4 B_1 2
6 A_3 6 B_2 7
7 A_4 2 B_2 2
를, 내가 시도했습니다 이 :
awk 'BEGIN{OFS=FS="\t"}FNR==NR{a[$4]+=$5;next}; {print $0,a[$4]}' \
dummy.txt dummy.txt |sort -k 4,4 -u
저를 준다 :
1 A_1 1 B_1 4 11
4 A_3 3 B_2 4 9
어떻게 병합하기 전에 F2도 고려할 수 있도록 이것을 수정할 수 있습니까? 나는 awk를 선호하지만 다른 솔루션도 환영합니다!
감사합니다 많이! 예, 완벽하게 작동합니다! – arnstrm