numpy的神奇广播函数
在使用pandas的时候,一般来说对两个DataFrame(简写df)的加减乘除,会自动索引对齐,很方便,DataFrame与Series之间的运算也会沿着指定的轴进行广播。最为人称道的广播形式大概就是apply和applymap这样的操作了,很方便,很强大。
但是也有不能满足需求的时候,比如一个DataFrame根据另一个DataFrame对应的元素进行自定义ufunc操作的时候,就不能满足了。庆幸的是numpy提供了一个广播函数,可以自定义广播函数,然后对两个DataFrame对应位置元素进行自定义操作。
1.pandas元素级操作
pandas的元素级操作是对每个元素进行相同的操作,比如格式转换,判断是否为空等。
df = DataFrame(np.arange(12).reshape(3,4))
# 判断为空
df.isnull()
# 对每个元素转字符串
df.applymap(lambda s:str(s))
# 执行数学操作
df.applymap(lambda s:s**