pandas与numpy中的字符串处理
问题解答
上次留了一个小问题,不知道大家想清楚了没有?
其实np.apply_along_axis
实现的也是轴上的操作,对轴上的值统一用函数进行处理,然后返回值。
import numpy as np
array = np.array([['hello world','sssimon yang']])
np.apply_along_axis(lambda a:[i.split(' ')[0] for i in a],axis=0,arr=array)
out:
array([['hello', 'sssim']], dtype='<U5')
在这一步中,处理的是第一个轴,第一个轴有1个值,剩下的还有一个轴,维度为2,所以处理了两次。
应该记住,每次指定的axis
都是可能要发生改变的轴,指定的轴有1个值,所以送入函数的有1个值,剩下的维度就是送入的次数。
所以函数每次拿到的是长度为1的一个list
,print
一下也可以看出来。
np.apply_along_axis(lambda a:print(a),axis=0,arr=array)
['hello world']
['sssimon yang']
out:
array(