Почему я не могу связать тип данных с двумя числами и строку с массивом с двумя числами и строкой? - PullRequest
1 голос
/ 06 мая 2019

Я полагаю, что приведенный ниже код должен работать, но на самом деле это не так, утверждая, ValueError: could not convert string to float: 'hi' - почему он пытается преобразовать строку в число с плавающей точкой?

import numpy as np
z = {}
dt = np.dtype([('num1',np.float_),('num2',np.float_),('nm',np.unicode_,8)])
z['one'] = np.array([1.0,2.0,'hi'],dt);
z['two'] = np.array([4.0,5.0,'mom'],dt);

1 Ответ

1 голос
/ 06 мая 2019

Это работает для меня, если я сгруппирую элементы, добавив скобки:

import numpy as np

z = {}
dt = np.dtype([('num1',np.float_),('num2',np.float_),('nm',np.unicode_,8)])
z['one'] = np.array([(1.0,2.0,'hi')], dt);
z['two'] = np.array([(4.0,5.0,'mom')], dt);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...