ValueError:找到输入样本数量不一致的输入变量:[1,298]

时间:2019-05-20 12:03:26

标签: python

我尝试从此处重现视频分类的示例 https://www.analyticsvidhya.com/blog/2018/09/deep-learning-video-classification-python/

我训练时创建验证样本

from sklearn.model_selection import train_test_split
X_train, X_valid, y_train, y_valid = train_test_split(X, dummy_y, test_size=0.3, random_state=42)    # preparing 

验证集

,我收到错误消息

>>> X_train, X_valid, y_train, y_valid = train_test_split(X, dummy_y, test_size=
0.3, random_state=42)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Users\Константин\AppData\Local\Programs\Python\Python37\lib\site-pack
ages\sklearn\model_selection\_split.py", line 2184, in train_test_split
    arrays = indexable(*arrays)
  File "C:\Users\Константин\AppData\Local\Programs\Python\Python37\lib\site-pack
ages\sklearn\utils\validation.py", line 260, in indexable
    check_consistent_length(*result)
  File "C:\Users\Константин\AppData\Local\Programs\Python\Python37\lib\site-pack
ages\sklearn\utils\validation.py", line 235, in check_consistent_length
    " samples: %r" % [int(l) for l in lengths])
ValueError: Found input variables with inconsistent numbers of samples: [1, 298]

我发现了类似的主题 ValueError: Found input variables with inconsistent numbers of samples: [7111, 1778]

但是这个决定并没有帮助我。 如何纠正?

1 个答案:

答案 0 :(得分:0)

此错误是由于数组dummy_y的形状不匹配引起的。 train_test_split()需要一个匹配行数的数组。

因此dummy_array必须变平。 文档np.flatten()

尝试以下代码

from sklearn.model_selection import train_test_split
X_train, X_valid, y_train, y_valid = \
    train_test_split(X, dummy_y.flatten(), test_size=0.3, random_state=42)

如果您可以共享一些有关变量(类型,形状等)的更多信息,那就太好了。

相关问题