我有一个看起来像
的numpy数组a = ['blue' 'red' 'green']
我希望它成为
b = ['blue', 'red', 'green']
我试过
b = a.split(' ')
但它返回错误:'numpy.ndarray' object has no attribute 'split'
答案 0 :(得分:13)
只需将其转到列表:
a = numpy.array(['blue', 'red', 'green'])
print a
>> ['blue' 'red' 'green']
b = list(a)
print b
>> ['blue', 'red', 'green']
但是为什么你会有一个带字符串的numpy数组?
答案 1 :(得分:2)
您只需拨打tolist:
import numpy as np
a = np.array(['blue', 'red', 'green'])
b = a.tolist()
print(b)
['blue', 'red', 'green']
答案 2 :(得分:-1)
我有一个类似的问题,列表没有逗号和任意数量的空格。 E.g:
[2650 20 5]
[2670 5]
[1357 963 355]
我这样解决了:
np.array(re.split("\s+", my_list.replace('[','').replace(']','')), dtype=int)
从控制台:
>>> import numpy as np
>>> import re
>>> my_list = '[2650 20 5]'
>>> result = np.array(re.split("\s+", my_list.replace('[','').replace(']','')), dtype=int)
>>> result
array([2650, 20, 5])
>>>