【发布时间】:2018-05-31 12:44:56
【问题描述】:
我正在尝试用 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 中没有泛型。我的问题更多是关于泛型之外的解决方案,例如公认的答案所指向的内容。
【问题讨论】:
-
不,没有通用的方法。对不起。
-
我发现这个提案文档 (go.googlesource.com/proposal/+/master/design/6282-table-data.md) 有几个有趣的变通方法,但是 NO 没有通用的方法。
-
谢谢,这篇文章是来自 gonum 的开发者,它是 numpy 的 golang 风格,所以正是我要找的。span>
标签: go slice n-dimensional