Numpy массив делится на целочисленные результаты целочисленные результаты - PullRequest
0 голосов
/ 16 апреля 2020

В следующем коде я читаю файл CSV, и значения преобразуются в массив NumPy. Затем я хочу, чтобы все четные значения одной строки «точек» массива были разделены на одно значение, а другие нечетные значения - на другое значение. Но когда происходит деление, полученные значения являются целыми числами, даже если ожидаются значения с плавающей запятой.

Python версия:

3.6.6 |Anaconda, Inc.| (default, Oct  9 2018, 12:34:16) 
[GCC 7.3.0]

Заранее спасибо

a = np.array([[ 2, 11, 27, 37, 52, 81],
       [45, 83,  6, 94, 94,  1],
       [49, 45, 44, 41, 16, 67]])
c = a.astype(float)
for i in range(10):
    c[i][::2] = a[i][::2] / 100.0
    c[i][1::2] = a[i][1::2] / 200.0
array([[0.02 , 0.055, 0.27 , 0.185, 0.52 , 0.405],
       [0.45 , 0.415, 0.06 , 0.47 , 0.94 , 0.005],
       [0.49 , 0.225, 0.44 , 0.205, 0.16 , 0.335]])

Если c = a.astype(float) не используется, выводятся целые числа.

...