Choosing UTM zone to use for large country?
Don't choose UTM, end of story. Many large countries choose a single sensible projection for some tasks. Victoria, a small state in my country was extremely foresighted in the late 90's and chose a Lambert Conformal Conic projection suitable for state-wide usage when they were undergoing a datum shift (ADG84/66 to GDA94), rather than hobble along with multiple UTM zones, as NSW did (they have three) and Tasmania (we only have the central NSW one). Think of how many zones there are even in Australia . . . .
I consider it a blessing when someone's area of interest traverses UTM zones as you then have the seed of insight to choose against the mindless hegemony.
When you ask "what projection should I use?" you also need to list the many and varied and unpredictable (to us) compromises and uses you have for this choice.
It's easy to answer the question "does it really matter", since ellipsoidal distance calcuations are easy to do. Still, I suspect you should choose a single projection suitable for the entire area just because it makes map creation so much easier.
BTW, the rarely seen Oblique Mercator often is a good choice for elongated areas generally following a great circle (that's what a UTM zone is), and UTM is really a discretized and limited specialization of the more general case. I doubt that the right balance of compromises couldn't be found in a different choice though.
You use a UTM zone when your area of interest fits completely within it or very nearly so. A UTM zone is not appropriate when your area of interest spans several zones such as in your case. A little overlap into a neighboring zone might be ok, but the further away from the zone you pick, the more distortion there will be and the more it matters. I found this page with a graphic example.
You actually want a projection designed to cover that area and minimize the appropriate distortions (shape, area, distance, direction - can't have them all minimized in one projection), as mdsumner suggests. Note that you can always take a standard projection and modify it to best suite your particular area of interest by changing the detailed settings. That does take a level of understanding to know the impact your choices have on distortions and whether or not they are acceptable. And of course the larger the area you look at, the greater the compromise you make in distortions for some areas. This Esri pdf is a good introduction to projections.
You could also get the length calculations you need on a per zone basis if you want to stick with UTM and its level of distortion/error.
- First you'd find a dataset that is the UTM grid in polygon form with an attribute identifying the zone.
- Intersect that with your roads so that each road gets an attribute defining what zone it is in. This also splits the road at the zone boundary since it's likely that you'll have roads crossing them. With a spatial join you could end up counting the same road twice.
- Since you also want totals per district, you'd want to next Intersect your updated roads with the district boundary layer to again split them at boundaries and get an attribute defining their district. Be cautious with intersect - if you have roads that aren't within a district, they will get dropped because intersect only looks at areas of overlap between layers and not just one or the other.
- Then you can add a field to hold your length calculation (you do not want to rely on the default shape_length field, since that is system tracked and tied to the projection of the data). Also note you need to do both intersects before calculating length, because your length field won't automatically update with changes. If you only did zones, then intersected with districts, each district piece of the road would have a length value for the whole zone and not just the district unless you recalculated it.
- Now start reprojecting (not defining, note the difference) the data into each UTM zone, select only the records with that zone attribute, and field calculate their length into your field. You don't need to split it to separate layers/shapefiles to do that, just make sure you're only working with the correct records for the current projection. Once you've calculated all the lengths you can go back to WGS84, and your length attribute will remain as whatever units it was originally calculated to.
- Finally, in ArcGIS you'd use Summary Statistics to total road length per district, but in QGIS you need the GroupStats plugin or something similar. Or you pull the table into another software that lets you do the same district case-based sum.
As an experiment, you can always add another length field, set a different projection that covers more than just a UTM zone, such as EPSG:3001 I mentioned earlier in a comment, field calculate that length, and compare it to your UTM lengths to see what kind of difference it makes.
I would suggest the best approach is to find out the primary projection that the national mapping or geomatics agency of the area in question usually uses and use that. I live in canada, covering a lot of UTM Zones, and when not geographic (lat/Long) the provinces generally each use a projection that is appropriate for the size and shape of their region. BC uses Albers Equal Area, Alberta uses 10TM, Saskatchewan uses an extended UTM 13, the whole country is often covered with a Lambert Conformal Conic and so on.