https://ideone.com/Fl1R9z

40行目の

df.iloc[i][output_column] = 1

が怪しいとおもうのですが、取り込んだdfが整数だけのときは1が書き込めているのですが、
dfに小数が含まれているときは書き込めていないようです。
なぜなのでしょう・・・・・。