我在我的项目中使用Scikit-learn中的OneHotEncoder。而且我需要知道将n_value设置为auto时每个单热点矢量的大小是多少。我以为n_value_可以证明这一点,但似乎除了尝试训练样本外别无选择。我制作了这个玩具示例代码来显示问题。您还知道其他解决方案吗?

from sklearn.preprocessing import OneHotEncoder

data = [[1], [3], [5]] # 3 different features

encoder = OneHotEncoder()
encoder.fit(data)

print(len(encoder.transform([data[0]]).toarray()[0])) # 3 number of dimensions in one-hot-vector
print(encoder.n_values_) # [6] == len(range(5))

最佳答案

这是你想要的?

>>> encoder.active_features_
array([1, 3, 5])

>>> len(encoder.active_features_)
3

关于python - 如何在Scikit学习中的OneHotEncoder中获取维数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40025102/

10-12 21:04