Оригинальный вопрос
(Нужна помощь с функцией преобразования целых чисел в матрице в бинаризованную версию с основанием = 2.
Я пытался использоватьnumpy.binary_repr
однако это не будет работать для матрицы.
Любой совет / функции?
Спасибо)
Исправленный вопрос
Целью здесь является создание
-500x50 2D-массива / ранее называвшегося матрицей.Рандомизировано между -1 и + 1
-Нормировать его между 0 и 1
-Множить на 1000 и округлить
-Бинаризировать сгенерированный 2D-массив путем получения базы2 из них с фиксированным размером 10 битов
Код Ниже пока
import numpy as np
np.random.seed(seed=1)
Weights = np.random.uniform(low=-1.0, high=1.0, size=500*50)
Weights = reshape(Weights,(500,50))
print(Weights.shape)
#Normalise the Weights
from sklearn.preprocessing import MinMaxScaler
scaler = MinMaxScaler()
Weights_Norm = scaler.fit_transform(Weights)
#print(Weights_Norm)
#Multiply by 1000 to get integers below 1000
Weights_Norm_1000=Weights_Norm*1000
#print(Weights_Norm_1000)
Weights_Norm_1000R= matrix.round(Weights_Norm_1000,0)
print(Weights_Norm_1000R)
Weight_int=Weights_Norm_1000R.astype(int)
x = np.array(Weight_int)
print(np.array([np.binary_repr(a) for b in x for a in b]).reshape(x.shape))