sklearn预处理一个热编码器复杂性

时间:2018-06-05 10:02:05

标签: python scikit-learn one-hot-encoding

我没有任何问题,只有一个问题要问: sklearn预处理包中的One Hot Encoder到底是什么?它是否迭代所有值以获得每个值并将每个值分开?

我有一些带有分类变量的数据,有10个或更多不同的值和14亿行。 OneHotEncoder必须迭代每一行以确保拥有所有值?或者还有其他解决方案来编码我的数据?

1 个答案:

答案 0 :(得分:0)

dataset = pd.read_csv('new_result.csv',header = 0)

X = dataset.iloc [:,: - 1] .values

y = dataset.iloc [:,ColSwipeRightCount] .values

labelencoder = LabelEncoder()

onehotencoder = OneHotEncoder()

labelencoder = LabelEncoder()

X [:,ColCategory] ​​= labelencoder.fit_transform(X [:,ColCategory])

X [:,ColPlatform] = labelencoder.fit_transform(X [:,ColPlatform])

X [:,ColDayOfWeek] = labelencoder.fit_transform(X [:,ColDayOfWeek])

X [:,ColSeason] = labelencoder.fit_transform(X [:,ColSeason])

X [:,ColTimeSlot] = labelencoder.fit_transform(X [:,ColTimeSlot])

X [:,ColVersionDesign] = labelencoder.fit_transform(X [:,ColVersionDesign])

onehotencoder = OneHotEncoder(categorical_features = [0,1,2,3,4,5,6,7])

X = onehotencoder.fit_transform(X)

但返回“内存错误”,fit_transform()中的问题 我认为我的数据太大了,但也许有其他解决方案。 我尝试自己做,但出现同样的问题......内存错误

相关问题