Когда я создаю Numpy ndarray,NumPy ndarray неинициализированные значения интересные
c = np.ndarray((4, 5))
я получаю:
c = array([[ 6.58119589e-295, nan, 2.10077583e-312,
1.08646184e-311, 2.84381388e-308],
[ 1.93933443e-309, 1.20154015e-306, 2.90571629e-298,
-7.52450413e-266, 3.00029506e-309],
[ 1.75738822e+159, 1.75738821e+159, 2.17292369e-310,
8.73989988e+245, 1.77863364e+248],
[ 8.65447358e+251, 6.21822202e+175, 2.63920065e-314,
6.60553537e-295, 6.06307776e-295]])
Это очень интересно для меня, так как все значения являются либо очень большой положительный или близко к нуль, и иногда я могу иметь NaN.
Что такое механизм позади?
Как это связано с sys.float_info
который sys.float_info(max=1.7976931348623157e+308, max_exp=1024, max_10_exp=308, min=2.2250738585072014e-308, min_exp=-1021, min_10_exp=-307, dig=15, mant_dig=53, epsilon=2.220446049250313e-16, radix=2, rounds=1)
?
Готов видеть ваше мнение.
UPDATE:
Я вижу это мусор в пространстве памяти, но то, что определяет их интерпретации в эти цифры? Или сказать, как python представляет числа с плавающей запятой?
UPDATE ON UPDATE:
Я вижу, как числа с плавающей точкой работы, но почему эти показатели находятся в определенной схеме?
Я обновил свой ответ со ссылками, описывающих точки представления с плавающей запятой. Пожалуйста, сделайте свой вопрос более конкретным, в его обновленном состоянии он слишком широк или непонятен, что вы просите, следовательно, кажется, что это не тема для SO. – alko
было бы интересно увидеть статистическое распределение их на самом деле, так как они действительно почти всегда + -1e150 или что-то вроде + -1e300 + или так, и никогда 1e50 или что-то в этом роде, – usethedeathstar
@usethedeathstar вы можете это сделать, это легко с 'np.histogram'. Я склонен видеть нули;) – alko