2017-01-16 41 views
4

比方说,我有这样一个清单:如何将字符串插入numpy列表中的每个第n个索引?

b = np.array(['a','b','c','a','b','c','a','b','c','a','b','c']) 

,我想在每一个17位插入此字符“\ n”的

np.insert(b,b[::16],'\n') 

为什么我得到这个错误信息,并如何才能做到这一点的核心方法?

ValueError: invalid literal for int() with base 10: 'a' 

非常感谢您

回答

4

np.insert的第二个参数应该是放置值的指数,你可以尝试:

n = 3 
np.insert(b, range(n, len(b), n), "\n") 

# array(['a', 'b', 'c', '\n', 'a', 'b', 'c', '\n', 'a', 'b', 'c', '\n', 'a', 
#  'b', 'c'], 
#  dtype='<U1') 
+1

好的,谢谢!我有点误解numpy.insert需要一些索引;) – user3759978

相关问题