我想将rust ndarray保存到HDF5文件中。
我有以下代码(无效):
let data: Vec<[f64; 2]> = data.iter().map(|o| [o.timestamp.amount, o.value.value]).collect();
let signal = ndarray::arr2(&data);
let sig1 = group.new_dataset::<f64>().create(&signal_name, (data.len(), 2))?;
sig1.write(signal)?; // trait bounds not satisfied??
正确的方法是什么?
文档告诉我arr2返回一个数组,但Dataset :: write却需要一个Into<ArrayView>>
。似乎没有为ArrayView实现From,但是:
.view()
方法,该方法应返回ArrayView,因此sig1.write(signal.view)
可能有效From<& ArrayBase>
,因此sig1.write(&signal)
也可能起作用至少在导入ArrayBase的情况下///在范围内。