如何确定方程式中的数据类型为float64?

时间:2018-09-11 23:31:51

标签: python python-2.7 pandas numpy

我有一个带索引(日期)和两列(A和B)的DataFrame。这些列的DataFrame类型为float64。

我正在使用for循环进行一些计算。我想将结果x1和x2分别添加到新列Alpha和Beta中。

我尝试使用以下行来识别数据类型

a = int(input("Type the value of a: "))
b = int(input("Type the value of b: "))
c = int(input("Type the value of c: "))

在...之后查看我的数据类型

print (df.dtypes)

我的代码是:

df.at[Rw+1,'Alpha']=x1

我收到一个错误:

for Rw in range(25):    
        def adj(df):                
            R=float(df.iloc[Rw,1])
            V=float(df.iloc[Rw+1,1])

            if R>=V:
                x1=R-V   
            else:
                x2=(V-R)**3

            df.at[Rw+1,'Alpha']=x1      
            print (df.dtypes)
            df.at[Rw+1,'Beta']=x2    
        adj(df)    

恐怕循环中带有.at [_]的行不能表示float64类型。

如何确定或如何更改为float64或如何将这些“ Alpha”和“ Beta”添加到DataFrame? ...我正在使用python27。

1 个答案:

答案 0 :(得分:1)

尝试更改行:

df.at[Rw+1,'Alpha']=x1      
df.at[Rw+1,'Beta']=x2

至:

df.ix[Rw+1,'Alpha']=x1      
df.ix[Rw+1,'Beta']=x2