【发布时间】:2021-01-22 06:55:26
【问题描述】:
下面是我的一段标签编码代码。在一次为 Dataframe 的一列实施标签编码器时,它工作得很好。但是,当我尝试一次实现整个分类特征时 sklearn 抛出
ValueError: 错误的输入形状 (600000, 24)。我找不到任何具体原因。
df = pd.read_csv("../inputs/cat-in-the-dat-train-folds.csv")
# extracting the categorical features
cat_features = [x for x in df.columns if x not in ( "id", "target", "kflod")]
for col in cat_features:
df.loc[:, col] = df[col].astype(str).fillna("NONE")
df_train = df[df["kfold"] != fold].reset_index(drop=True)
df_valid = df[df["kfold"] == fold].reset_index(drop=True)
lbl_enc = preprocessing.LabelEncoder()
full_cat_data = pd.concat(
[df_train[cat_features], df_valid[cat_features]],
axis=0)
lbl_enc.fit(full_cat_data)
x_train = lbl_enc.transform(df_train[cat_features])
x_valid = lbl_enc.transform(df_valid[cat_features])
【问题讨论】:
-
也许this 可以帮助你。
-
在
cat_featureslistcomp 中,"kflod"是故意的还是"kfold"的拼写错误?
标签: python scikit-learn