I have a tab delim file
NC_044998.1 4013 0 TT 2 GG 0 TT 0 TT 0 TT
NC_044998.1 4016 0 TT 0 TT 0 TT 2 GG 0 TT
NC_044998.1 4018 0 TT 0 TA 0 TT 0 TT 0 TT
NC_044998.1 4019 2 CG 2 CC 2 CC 2 CG 2 CC
I need to compare the two letters in every other column
If they are match add "homo" else add "het"
The result of each comparison can be appended to the last column, as in the output bellow.
NC_044998.1 4013 0 TT 2 GG 0 TT 0 TT 0 TT homo homo homo homo homo
NC_044998.1 4016 0 TT 0 TT 0 TT 2 GG 0 TT homo homo homo homo homo
NC_044998.1 4018 0 TT 0 TA 0 TT 0 TT 0 TT homo het homo homo homo
NC_044998.1 4019 2 CG 2 CC 2 CC 2 CG 2 CC het homo homo het homo
another example
NC_044998.1 3803 0 GG 1 GA 0 GG 1 GA 1 GA 0 GG 0 GG var heterozygous varvar 8 0.727273 3 0.272727
NC_044998.1 3806 0 TT 1 TA 1 TA 0 TT 0 TT 0 TT 0 TT var heterozygous varvar 9 0.818182 2 0.181818
output would be
NC_044998.1 3803 0 GG 1 GA 0 GG 1 GA 1 GA 0 GG 0 GG var heterozygous varvar 8 0.727273 3 0.272727 homo het homo het het homo homo
NC_044998.1 3806 0 TT 1 TA 1 TA 0 TT 0 TT 0 TT 0 TT var heterozygous varvar 9 0.818182 2 0.181818 homo het het homo homo homo homo
have tried
awk 'BEGIN {FS=OFS="\t"} {for (i=4; length($i)==2 && i<=12; i+=2) substr($i,1,1) == substr($i,2,1); print $0, "homo"}'
and
awk 'BEGIN {FS=OFS="\t"} { for (i=4; i<=NF; i+=2); for (j=1; j<=2; ++j); $0 = $0 " " (substr($i,j,1) == substr($i,2,1) ? "homo" : "het")} 1'
But both will only print "homo" in the end of each line