Как я могу создать 2d массив целых чисел? - PullRequest
0 голосов
/ 17 октября 2019

Как мне создать двумерный массив нулей, который будет храниться как целые числа, а не с плавающей точкой в ​​python? np.zeros((10,10)) создает поплавки.

Ответы [ 4 ]

2 голосов
/ 17 октября 2019

Вы можете использовать numpy.full

numpy.full (shape, fill_value, dtype = None, order = 'C')

np.full((10, 10), 0, dtype=int)

Или numpy.zeros

numpy.zeros (форма, dtype = float, order = 'C')

numpy.zeros((10, 10), dtype = int)
0 голосов
/ 17 октября 2019

с помощью оператора "*" скопируйте список.
np.reshape([data]*row*column, (row, column))

в данных вашего дела = 0, строка и столбец = 10.

np.reshape([0]*100, (10, 10))

применяя другой раствор, содержащий петли, потребляйте больше времени.

0 голосов
/ 17 октября 2019

Вы можете использовать полный метод

import numpy as np
arr = np.full((3,4),10) # will return a 3 X 4 array setting values to 10

Существует также full_like, основное отличие состоит в том, чтобы использовать форму существующего массива и создать другой с такой же формой, но вы можете поместить любое значение настройки здесьпример: импортировать numpy как np

x = np.arange(6).reshape(2,3) # so x =np.array([[1,2,3],
                                                [4,5,6]) 

и вы хотите массив с той же формой (2,3), но с 10 значениями

arr = np.full_like(x,10) # arr=np.array([10,10,10],
                                        [10,10,10])
0 голосов
/ 17 октября 2019

Такая строка также должна работать: [[0 for i in range(10)] for i in range(10)]

...