我有一个数据框,我想用它作为" x"在函数0.00459652*np.exp(4.5*x)+0.000984312
中
这是我的代码
df=pd.read_csv('F:/Data32.csv')
df2=df['Temperature']
x=df2.values.tolist()
test=df2.apply(0.00459652*np.exp(4.5*x)+0.000984312)
test
我一直收到错误 TypeError:不能将序列乘以非int类型' float'
答案 0 :(得分:2)
如果您要将功能0.00459652*np.exp(4.5*x)+0.000984312
应用于Temperature
列中的每个值,只需将该列放在x
位置:
test = 0.00459652*np.exp(4.5*df['Temperature'])+0.000984312
您得到该错误的原因是x
是一个python列表,不能乘以浮点数(在本例中为4.5)。但是df['Temperature']
可以(它是一只熊猫。系列)
此外,0.00459652*np.exp(4.5*x)+0.000984312
不是python函数。您需要lambda x : 0.00459652*np.exp(4.5*x)+0.000984312