Read the header once
Column names are data, not fixed code, so write the analysis against the names you read rather than against positions. If a column is renamed, a position-based script silently computes the wrong thing; a name-based one fails loudly, which is what you want.