Создайте несколько примеров данных, по крайней мере, с одним примером на класс
df = pd.DataFrame({
'0': [0, 1, 0, 0, 0, 0],
'1': [0, 0, 0, 0, 1, 0],
'2': [1, 0, 0, 1, 0, 0],
'3': [0, 0, 1, 0, 0, 0],
'4': [0, 0, 0, 0, 0, 1],
})
Стекируйте столбцы (преобразуйте из широкой таблицы в длинную)
df = df.stack().reset_index()
>>> df.head()
level_0 level_1 0
0 0 0 0
1 0 1 0
2 0 2 1
3 0 3 0
4 0 4 0
Получите класс для каждой точки данных
Y = df[df[0] == 1]['level_1']
>>> Y
2 2
5 0
13 3
17 2
21 1
29 4
Вес класса вычислений
class_weights = compute_class_weight(
'balanced', np.unique(Y), Y
)
>>> print(class_weights)
[1.2 1.2 0.6 1.2 1.2]