func (array denseF64Array) ColSet(col int, values []float64) {
	if col < 0 || col >= array.shape[1] {
		panic(fmt.Sprintf("ColSet can't set col %d of a %d-col array", col, array.shape[1]))
	} else if len(values) != array.shape[0] {
		panic(fmt.Sprintf("ColSet has %d rows but got %d values", array.shape[0], len(values)))
	}
	for row := 0; row < array.shape[0]; row++ {
		array.ItemSet(values[row], row, col)
	}
}
Set the values of the items on a given column
package matrix
import (
	"fmt"
)
type denseF64Array struct {
	shape     []int
	array     []float64
	transpose bool
}
func (array denseF64Array) Add(other ...NDArray) NDArray {
	return Add(&array, other...)
}
func (array denseF64Array) All() bool {
	return All(&array)
}
func (array denseF64Array) AllF(f func(v float64) bool) bool {
	return AllF(&array, f)
}
func (array denseF64Array) AllF2(f func(v1, v2 float64) bool, other NDArray) bool {
	return AllF2(&array, f, other)
}
func (array denseF64Array) Any() bool {
	return Any(&array)
}
func (array denseF64Array) AnyF(f func(v float64) bool) bool {
	return AnyF(&array, f)
}
func (array denseF64Array) AnyF2(f func(v1, v2 float64) bool, other NDArray) bool {
	return AnyF2(&array, f, other)
}
func (array denseF64Array) Apply(f func(float64) float64) NDArray {
	result := array.copy()
	for i, val := range result.array {
		result.array[i] = f(val)
	}
	return result
}
func (array denseF64Array) Array() []float64 {
	if array.transpose {
		return array.copy().array
	} else {
		return array.array
	}
}