我正在尝试用 golang 编写一些机器学习代码。我想不出一种方法让函数处理 N 维的切片,因为不同的维度需要返回不同的类型。这是一个将 2d 切片拆分为测试/训练集的示例函数。
func SplitData(data [][]int, testPerc float32) ([][]int, [][]int) {
size := len(data)
testSlice := int(float32(size) * testPerc)
return data[0:testSlice], data[testSlice:]
}
在 python 中,我不需要担心数组的维度。有没有“golang”的方式来处理这个问题?
编辑:我知道 golang 中没有泛型。我的问题更多是关于泛型之外的解决方案,例如公认的答案所指向的。