采用对数和乘以数据帧列

时间:2018-03-14 22:54:44

标签: python-3.x jupyter-notebook

我有一个像这样的DataFrama:

K   T   
0   24
1   76 
2   88

并希望将K的自然对数乘以T并保存在新的G列中。

我的尝试

df命名为数据框,然后:

df['G']=df['T']*np.log(df['K'], np.e)

但得到此错误:

TypeError: return arrays must be of ArrayType

我知道我采用自然对数的方式可能是错误的,但不知道如何解决它。

1 个答案:

答案 0 :(得分:1)

无需指定np.e,这似乎是您的问题。 np.log的默认值已经是自然日志。

>>> df['T'] * np.log(df['K'])
0       -inf
1     0.0000
2    60.9970
dtype: float64

在您的通话中,np.e被解释为out参数,该参数不是数组。因此,“返回数组必须是ArrayType。”