строки ndarray не отображаются по одной в каждой строке - PullRequest
0 голосов
/ 25 мая 2018

У меня есть этот код:

import numpy as np

M = np.matrix([[-4.41991030e-05,-9.27712599e-04,3.75797779e-04,4.11804326e-04,1.08815444e-04],
        [-3.58432112e-04,-6.11583291e-04,1.18565910e-03,4.10337098e-04,9.96854953e-05],
        [-1.36865905e-03,1.19013259e-03,1.62785645e-03,1.85052363e-04,6.73256050e-05],
        [-0.00292639,-0.0084904,-0.00337932,-0.00014984,0.0001385]])

print(M)

Когда я запускаю его, каждая строка делится на две строки, хотя терминал находится в полноэкранном режиме:

enter image description here

Даже когда я сохраняю его в файл, используя эту часть кода:

with open('file.txt', 'w') as f:
    for row in M:
        f.write(str(row))
        f.write('\n')

У меня возникает та же проблема:

enter image description here

Я пытался открыть файл в разных редакторах, но у меня был один и тот же формат вывода, поэтому я решил, что проблема не связана с текстовыми редакторами, поэтому я разместил свой вопросздесь.
Кто-нибудь здесь знает, в чем проблема?

1 Ответ

0 голосов
/ 25 мая 2018

numpy устанавливает максимальную ширину линии по умолчанию на 75, вы можете изменить это с помощью set_printoptions(linewidth = some_num), см. документы :

In[17]:
np.set_printoptions(linewidth=700)
M = np.matrix([[-4.41991030e-05,-9.27712599e-04,3.75797779e-04,4.11804326e-04,1.08815444e-04],
        [-3.58432112e-04,-6.11583291e-04,1.18565910e-03,4.10337098e-04,9.96854953e-05],
        [-1.36865905e-03,1.19013259e-03,1.62785645e-03,1.85052363e-04,6.73256050e-05],
        [-0.00292639,-0.0084904,-0.00337932,-0.00014984,0.0001385]])

print(M)

[[-4.41991030e-05 -9.27712599e-04  3.75797779e-04  4.11804326e-04  1.08815444e-04]
 [-3.58432112e-04 -6.11583291e-04  1.18565910e-03  4.10337098e-04  9.96854953e-05]
 [-1.36865905e-03  1.19013259e-03  1.62785645e-03  1.85052363e-04  6.73256050e-05]
 [-2.92639000e-03 -8.49040000e-03 -3.37932000e-03 -1.49840000e-04  1.38500000e-04]]
...