无论信号的特定部分是否正常(有心律失常),我都坚持信号数组(ECG)的分类。所采用的段的长度是可变的(这会影响分类),我无法执行相同的操作并收到以下错误:
ValueError: setting an array element with a sequence.
我的训练集看起来像 this ;维度:2065 个元素数量可变的数组
输出如下:array(['N', 'N', 'N', ..., 'N', 'N', 'N'], dtype=object) 2065 长向量
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)`
任何提示/建议将不胜感激
最佳答案
X : {array-like, sparse matrix}, shape = [n_samples, n_features] Training vectors, where n_samples is the number of samples and n_features is the number of features.
y : array-like, shape = [n_samples] Target values.
来源:sklearn.naive_bayes.MultinomialNB.fit
因此,您必须将特征向量 (n_samples) 调整为固定长度 (n_features)。
关于python - 在Python中对可变长度数组进行分类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44070517/