arrays - 如何从循环中填充变体参数

标签 arrays go variadic-functions

对于以下示例,我需要从文件中读取值(没问题)并将其作为数据点放入方法“func (r *Regression) Train(d ...*dataPoint)”中。这有效:

r.Train(
    regression.DataPoint(1, []float64{1, 1, 1}),
    regression.DataPoint(4, []float64{2, 2, 2}),
    regression.DataPoint(9, []float64{3, 3, 3}),
)

但我想把它放在这样的循环中:

for i := 1; i <= 4; i++ {
   ??? regression.DataPoint(i*i, []float64{i, i, i}), ???
}

我不能使用 dataPoint 数组,因为它仅在该包中可见。这是完整的源代码:

https://github.com/sajari/regression (参见示例用法)

非常感谢,

马切杰

最佳答案

从您链接的页面:

Note: You can also add data points one by one.

因此你需要:

for i := 1; i <= 4; i++ {
   r.Train(regression.DataPoint(i*i, []float64{i, i, i}))
}

关于arrays - 如何从循环中填充变体参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45327361/

相关文章:

go - 运行时 : goroutine stack exceeds 1000000000-byte limit, fatal error :打印嵌套结构时堆栈溢出

go - 在Apache Beam Dataflow管道中控制并行度

go - 向构造函数添加可变参数时如何在 Go 中进行版本控制?

c - 未知长度的可变参数列表的问题

facebook - 使用huandu/facebook Golang FB api时出现DecodeField错误

python - Numpy:尝试在数组切片的切片上设置值

Python、numpy、einsum 将一叠矩阵相乘

java - 从压缩数据中获取字符串,反之亦然

c++ - 可变参数模板且没有值

java - 在 n^2*log(n) 时间内有 4 个数字的 3sum 的变体?