>>> import numpy as np
>>> a = np.array(['zero', 'one', 'two', 'three'])
>>> a[1] = 'thirteen'
>>> print a
['zero' 'thirt' 'two' 'three']
>>>
As you can see, the second element has been truncated to the maximum number of characters in the original array.
Is it possible to workaround this problem?
If you don't know the maximum length element, then you can use dtype=object
>>> import numpy as np
>>> a = np.array(['zero', 'one', 'two', 'three'], dtype=object)
>>> a[1] = 'thirteen'
>>> print a
['zero' 'thirteen' 'two' 'three']
>>>
Use the dtype
argument in numpy.array
, eg:
>>> import numpy as np
>>> a = np.array(['zero', 'one', 'two', 'three'], dtype='S8')
>>> a[1] = 'thirteen'
>>> print(a)
['zero' 'thirteen' 'two' 'three']
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.