cannot convert the series to <class float >
今天遇到的一个问题是想对一个series取对数遇到了error(无法将序列转化为class float)
刚开始一直用的是asdtype去改变数值类型
后来发现还是会出现一样的错误
最终发现
- math.log()和numpy.log()函数都能进行对数运算。
- math.log()只能对单个数值(scalar)进行运算,而对多个数值(scalars)计算会出错。
- numpy.log()可以对多个数值(scalars)进行计算。
series里包含很多个值所以不能用math.log()
最后解决方法是
#假设这个series的名字a
result=a.apply(np.log)#没有底数默认e
reuslt=a.apply(np.log10)#这样是以10为底
成功解决!