Следующий код предназначен для OneHotEncode указанных столбцов (функций). У меня есть 54 функции, и я хочу кодировать их все, но по какой-то причине максимальное количество функций, которые я могу кодировать, равно 25, если я увеличу количество функций для кодирования сверх этого, .fit_transorm () ничего не даст.
import pandas as pd
import numpy as np
import tensorflow as tf
from tensorflow.keras.callbacks import TensorBoard
from sklearn.preprocessing import OneHotEncoder
from sklearn.compose import ColumnTransformer
# ======================== 1 - Importing the data ========================
# - Dataset has 54 features and 1 label (55 columns)
# - 10k examples
datasetPath = "10k-States(0).csv"
dataset = pd.read_csv(datasetPath)
x_train = dataset.iloc[:, 0:54]
y_train = dataset.iloc[:, 54]
# ===================== 2 - Encode x (input) values ======================
# Columns to be encoded (should be 54, but 25 is max that works...)
cols_to_encode = list(range(25))
# 'categories' parameter is multiplied by same number as above,
# every feature has the same classes (labels)
transformer = ColumnTransformer(
[('one_hot_encoder', OneHotEncoder(categories=[[0,1,2,3,4,5]]*25), cols_to_encode)],
remainder='passthrough'
)
x = transformer.fit_transform(x_train)
Это вывод, когда у меня есть ![Dataset variables](https://i.stack.imgur.com/NkHdC.png)
Все это нормально, но как только я увеличу до 26 или более столбцов, значение x будет равно (), ничего. Понятия не имею, что происходит ...