一次热编码后数据帧中的行数减少
There are fewer rows in the dataframe after one hot encoding
我有一个数据集,我想使用 sklearn.preprocessing.OneHotEncoder 对其进行热编码。我的问题是编码后,结果包含的行数少于原始数据集(差异为 5)。
这是我的代码:
one_hot_encoder = OneHotEncoder(handle_unknown='ignore', sparse=False)
X_cat = pd.DataFrame(
one_hot_encoder.fit_transform(X[categorical_vars]),
columns=one_hot_encoder.get_feature_names(categorical_vars)
)
感谢您提前提出任何建议。 :)
我认为你得到的输出列较少,因为你有一些未知的分类特征。因为您将关键字 'handle_unknown' 设置为忽略,所以会跳过这些列。
如果你把你的一些样本数据给我,我可以帮你测试一下,给你一个更好的解释。否则,我可以建议您阅读此 post。它很好地解释了 'handle_unknown' 关键字的用途以及使用它的原因和时间。
我有一个数据集,我想使用 sklearn.preprocessing.OneHotEncoder 对其进行热编码。我的问题是编码后,结果包含的行数少于原始数据集(差异为 5)。 这是我的代码:
one_hot_encoder = OneHotEncoder(handle_unknown='ignore', sparse=False)
X_cat = pd.DataFrame(
one_hot_encoder.fit_transform(X[categorical_vars]),
columns=one_hot_encoder.get_feature_names(categorical_vars)
)
感谢您提前提出任何建议。 :)
我认为你得到的输出列较少,因为你有一些未知的分类特征。因为您将关键字 'handle_unknown' 设置为忽略,所以会跳过这些列。
如果你把你的一些样本数据给我,我可以帮你测试一下,给你一个更好的解释。否则,我可以建议您阅读此 post。它很好地解释了 'handle_unknown' 关键字的用途以及使用它的原因和时间。