首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >np.vstack的问题

np.vstack的问题
EN

Stack Overflow用户
提问于 2020-11-25 04:33:16
回答 1查看 30关注 0票数 0

我把我的数据分成训练和测试,然后把训练分成另一个训练集和一个验证集。对于这个新的训练集和验证集,我应用了下面的转换。我正在实现随机森林回归,因此在下一步,我将对这些集合应用转换,并尝试将其合并为一个集合。问题是np.vstack没有返回正确的形状:输出:(2,1) <-应该是(25455,2394) (21636,2394) (3819,2394)

有人能告诉我我做错了什么吗?

代码语言:javascript
复制
Xtrain_rf, Xtest_rf = train_test_split(insurance_data_prep, test_size=0.15, random_state=42)
Xtrain2_rf, Xval_rf = train_test_split(Xtrain_rf, test_size=0.15, random_state=42)

full_transform_rf = ColumnTransformer([
    ("num", StandardScaler(), attributes_num),
    ("cat", OneHotEncoder(handle_unknown='ignore'), attributes_cat),
])

## fit transform in the train set
Xtrain2_rf_att_prepared = full_transform_rf.fit_transform(Xtrain2_rf_att)
## transform in the validation set
Xval_rf_att_prepared = full_transform_rf.transform(Xval_rf_att)

whole_train_set_attributes_rf = np.vstack((Xtrain2_rf_att_prepared, Xval_rf_att_prepared))
print(whole_train_set_attributes_rf.shape)
print(Xtrain2_rf_att_prepared.shape)
print(Xval_rf_att_prepared.shape)
EN

回答 1

Stack Overflow用户

发布于 2020-11-26 19:31:25

我试图用我自己的数据集复制您的代码,我遇到的一个问题是您的代码片段中没有定义Xtrain2_rf_attXval_rf_att变量。这些是您传递给ColumnTransformer的变量。

我猜在您的例子中,变量是已定义的,但是您真正想要传递给ColumnTransformer的是Xtrain2_rfXval_rf

如果这不能解决您的问题,您是否可以编辑您的问题并添加以下信息:

  • insurance_data_prep形状和列(或者them)
  • attributes_numattributes_dat
  • clearly中的一些提供来自代码末尾的三个打印语句的输出,而不仅仅是其中的一个

您可能需要使用MRE来替换您的数据帧,我们将看到

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64994395

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档