Я не знаю, куда вы идете не так, как надо, но вы можете попробовать использовать стилер:
df = pd.DataFrame(data=[[1,2], [3.2, 4.01]], columns=['gross', 'fish'])
s = df.style
s.format({'gross': "£{0:,.0f}".format})
s.render()
производит:
<style type="text/css" ></style> <table id="T_97cbc3ba_cc03_11e8_8f0c_8c85905d0081" > <thead> <tr> <th class="blank level0" ></th> <th class="col_heading level0 col0" >gross</th> <th class="col_heading level0 col1" >fish</th> </tr></thead> <tbody> <tr> <th id="T_97cbc3ba_cc03_11e8_8f0c_8c85905d0081level0_row0" class="row_heading level0 row0" >0</th> <td id="T_97cbc3ba_cc03_11e8_8f0c_8c85905d0081row0_col0" class="data row0 col0" >£1</td> <td id="T_97cbc3ba_cc03_11e8_8f0c_8c85905d0081row0_col1" class="data row0 col1" >2</td> </tr> <tr> <th id="T_97cbc3ba_cc03_11e8_8f0c_8c85905d0081level0_row1" class="row_heading level0 row1" >1</th> <td id="T_97cbc3ba_cc03_11e8_8f0c_8c85905d0081row1_col0" class="data row1 col0" >£3</td> <td id="T_97cbc3ba_cc03_11e8_8f0c_8c85905d0081row1_col1" class="data row1 col1" >4.01</td> </tr></tbody> </table>