I have a DataFrame, all values are integer

```
        Millage  UsedMonth  PowerPS
1        261500        269      101
3        320000        211      125
8        230000        253      101
9        227990        255      125
13       256000        240      125
14       153000        242      150
17       142500        215      101
19       220000        268      125
21       202704        260      101
22       350000        246      101
25       331000        230      125
26       250000        226      125

```

And I would like to calculate log(Millage)
SO I used code

```
x_trans=copy.deepcopy(x)
x_trans=x_trans.reset_index(drop=True)
x_trans.astype(float)

import math
for n in range(0,len(x_trans.Millage)):
    x_trans.Millage[n]=math.log(x_trans.Millage[n])
x_trans.UsedMonth[n]=math.log(x_trans.UsedMonth[n])

```

I got all interger values

```
    Millage UsedMonth   PowerPS
0   12  5   101
1   12  5   125
2   12  5   101
3   12  5   125
4   12  5   125
5   11  5   150

```

It's python 3, Jupyter notebook
I tried math.log(100)
And get 4.605170185988092 

I think the reason could be DataFrame data type. 
How could I get the log() result as float
Thanks