我有一个非常简单的pandas DataFrame(X),有八列,二十行充满了浮点数。然后,我有另一个DataFrame(y),即20行。我跑的时候:
score = cross_val_score(clf, X, y, scoring='accuracy')
我没有错误,结果很有意义(基本上DataFrame没有任何问题)。但是,当我跑:
predicted = cross_val_predict(clf, X)
或
predicted = cross_val_predict(clf, X.values)
我收到以下错误:
Expected array-like (array or non-string sequence), got None
有关问题的建议吗?
答案 0 :(得分:2)
由于您正在处理受监督的学习问题,因此您还应将List<decimal> MovingAverage(int period, decimal[] Data)
{
decimal[] interval = new decimal[period];
List<decimal> MAs = new List<decimal>();
for (int i=0, i < Data.length, i++)
{
interval[i % period] = Data[i];
if (i > period - 1)
{
MAs.Add(interval.Average());
}
}
return MAs;
}
作为y
的参数,即cross_val_predict
。这是必要的,因为k折叠交叉验证需要训练多个训练集的分类器。