0

我有一个不同形状的数组列表,即

list = [array([1,2,3]), dtype=int16), 
            array([1,2,3,4,5]), dtype=int16), 
            array([1,2]), dtype=int16),
            array([1,2,3,4,5,6,7,8,9]), dtype=int16)]

我想在第一层是 conv1 的 cnn 中使用这些数据作为输入。我应该如何转换数据才能工作?zeros我应该用数组填充吗?数据是来自心脏设备的信号。d

4

1 回答 1

0

如您所知,每个样本数据都必须具有相同的形状才能为任何 Keras 模型提供数据,因此您必须使所有样本的形状相同。为此,您可以利用 sklearn.impute.SimpleImputer 填充虚拟数字以使形状相同。SimpleImputer 有一些选项需要填写,请参考下面的网站。

https://scikit-learn.org/stable/modules/generated/sklearn.impute.SimpleImputer.html

如果最小的样本形状(例如[1, 2])仍然比较大,您可以修剪其他样本的数据以适应最小的形状。如果最小的还很小,你应该考虑是否应该省略它。

给定数据是心跳波数据,我将尝试使用你一开始提到的零。

于 2021-05-07T13:09:55.497 回答