Names the columns by name where they have one and by index otherwise, since
an index is no help when the matrix came from a data frame and a name is not
available when it did not. This is a warning rather than an error because a
single row is a legitimate way to get here: sd() of one value is NA.
