dataframeの2列目の値をすべて読み込み、計算した後編集するプログラムをpandasで作成しております。
その中で
TypeError: unsupported operand type(s) for -: 'str' and 'float'
と表示され、計算できなく困っております。

作成したdataframeのdf_rawの中身はこのような中身です。

df_raw
[7801 rows x 2 columns]

列"c04"をfor分で取り込み、計算したいと考えました。

for i in range(0,len(df_raw.index)):
    x1 = df_raw.iloc[i,1]
    y1 = df_raw.iloc[1,i]
    a1 = float(a)
    b1 = float(b)

    print(x1,type(x1))
    print(y1,type(y1))
    print(a1,type(a1))
    print(b1,type(b1))

    ans = y1 - (a1 * x1 + b1)
    df_keisan.loc[i,1] = ans

実行結果
-48.838847629331696 (class 'float')
-11.989996 (class 'str')
0.0008421538461541317 (class 'float')
36.817853842785226 (class 'float')


TypeError Traceback (most recent call last)
<ipython-input-81-db8b0808526b> in <module>()
10 print(a1,type(a1))
11 print(b1,type(b1))
---> 12 ans = y1 - (a1 * x1 + b1)
13 df_keisan.loc[i,1] = ans

TypeError: unsupported operand type(s) for -: 'str' and 'float'

for i in range(0,len(df_raw.index)):
i=1に変更すると思い通りにすべてfloat型になって計算できることは確認済みです。
よろしくおねがいします。