嗨,我需要你的帮助来解决这个错误:
ValueError: Expected 2D array, got 1D array instead:
array=[0. 0. 0. ... 0. 0. 1.].
Reshape your data either using array.reshape(-1, 1) if your data has a single feature or array.reshape(1, -1) if it contains a single sample.
代码为:
train, test = train_test_split(dataset_ordenado, test_size = 0.30, random_state = 20201122)
Objetivo_train=train['results']
Objetivo_test=test['results']
Indep_train=train.drop(['results'],axis=1)
Indep_test=test.drop(['results'],axis=1)
TS = TimeSeriesSplit(n_splits = 5)
dt = DecisionTreeClassifier()
grid = {'max_depth': [5,7,9,11,15], 'min_samples_leaf': [5,7,9,11,13],'criterion': ['gini', 'entropy']}
gs = GridSearchCV(dt, param_grid=grid, cv=TS)
gs.fit(Objetivo_train, Indep_train)
我发现了错误,我从pickle数据中的aws下载了信息,但我没有看到所有信息都是objet类型的,所以我需要转换所有数值。
我发布了所有列的转换代码,以防有人进入并服务
我得到了列表形式的变量columns_names=dataset_ordenado.columns.values[1:]
columns_names_list=列表(columns_name(
变换dataset_ordenado[columns_names_list]=数据集_ordenado[columns_names_list].apply(pd.to_numeric(