在python中对可变长度数组进行分类

时间:2017-05-19 12:45:45

标签: python scikit-learn naivebayes multinomial

我坚持信号阵列(ECG)的分类,无论信号的特定部分是否正常(有心律失常)。所采取的段长度可变(这会影响分类),我无法做到这一点,并收到以下错误:

  

ValueError:使用序列设置数组元素。

我的训练集看起来像this;尺寸:具有可变数量元素的2065个阵列 输出如下:array(['N', 'N', 'N', ..., 'N', 'N', 'N'], dtype=object) 2065 long vector Y.shape = training_set.shape = 2065 我使用Multinomia朴素贝叶进行分类:

from sklearn.naive_bayes import MultinomialNB
clf = MultinomialNB()
clf.fit(inp, Y)
MultinomialNB(alpha=1.0, class_prior=None, fit_prior=True)`

任何提示/建议都将深受赞赏

1 个答案:

答案 0 :(得分:1)

  

X:{array-like,sparse matrix},shape = [n_samples,n_features]   训练向量,其中n_samples是样本数,n_​​features是要素数。

     

y:array-like,shape = [n_samples]   目标值。

来源:sklearn.naive_bayes.MultinomialNB.fit

因此您必须将特征向量(n_samples)调整为固定长度(n_features)。