Numpy load.txt не преобразует значение в целое число - PullRequest
2 голосов
/ 05 июня 2019

Если я запускаю следующий код на ноутбуке с Windows с numpy 1.16.2, он работает. Тем не менее, когда я запускаю этот код на Mac с numpy 1.16.4 или 1.16.2, это не так и выдает следующую ошибку:

недопустимый литерал для int () с основанием 10: '34 .623659 ... '

Мы попытались установить разные версии numpy на устройстве Mac, однако происходит то же самое. Однако, если заменить int на float, мы хотим отобразить значения в целочисленной форме.

Команда, которую мы используем:

A = np.loadtxt('ex2data1.txt', delimiter=',', dtype ='int', max_rows = 5)
print(A)

С первыми строками текстового файла:

34.62365962451697,78.0246928153624,0
30.28671076822607,43.89499752400101,0
35.84740876993872,72.90219802708364,0
60.18259938620976,86.30855209546826,1
79.0327360507101,75.3443764369103,1
45.08327747668339,56.3163717815305,0
61.10666453684766,96.51142588489624,1
75.02474556738889,46.55401354116538,1
76.09878670226257,87.42056971926803,1
84.43281996120035,43.53339331072109,1
95.86155507093572,38.22527805795094,0
75.01365838958247,30.60326323428011,0
82.30705337399482,76.48196330235604,1
69.36458875970939,97.71869196188608,1
39.53833914367223,76.03681085115882,0
53.9710521485623,89.20735013750205,1

Мы ожидали, что он вернет массив с теми же значениями, что и в текстовом файле, но в целочисленной форме, однако мы получаем ошибку выше.

1 Ответ

1 голос
/ 05 июня 2019

Вам нужно float:

A = np.loadtxt('ex2data1.txt', delimiter=',', dtype =float, max_rows = 5).astype(int)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...