如何纠正 Numpy 和 TPOT 数组形状错误?

How to correct Numpy and TPOT array shapes error?

我正在尝试将 featurelabel numpy 数组传递给 train_test_split。这些特征是单列(日期时间 dtype 转换为整数)。 labels 数组中有 900 个观测值。

features.shape returns (1101, 1)

labels.shape returns (1101, 900)

在拆分为特征和标签数组之前,我做了 df.fillna(0, inplace=True) 因为我认为 NaN 值是最初的问题。

这是我所在的街区 运行:

my_tpot = TPOTRegressor()
X_train, X_test, y_train, y_test = train_test_split(pd.np.array(features), pd.np.array(labels),train_size=0.75, test_size=0.25)
tpot = TPOTRegressor(generations=5, population_size=20, verbosity=2)
tpot.fit(X_train, y_train)

异常发生在 train_test_split 行。这是例外情况:

ValueError: Error: Input data is not in a valid format. Please confirm that the input data is scikit-learn compatible. For example, the features must be a 2-D array and target labels must be a 1-D array.

这是什么原因造成的?

事实证明 TPOT 此时无法解决多标签回归问题,这是我传递 (101, 900) 标签大小的问题是行不通的。如果将其缩减为单列,则代码可以正常工作。