将pandas dataframe中的上标符号导出为csv或excel

时间:2016-02-05 14:23:01

标签: python pandas

我想写下这篇文章。到csv文件:

  df.loc[0] = ['Total (2000)',
                       numpy.nan,
                       numpy.nan,
                       numpy.nan,
                       2.0,
                       1.6,
                       '10^6 km^2']

在写作“10 ^ 6 km ^ 2'”时,有没有办法做到这一点?格式为6是10的上标,2是km的上标。如果在csv中不可能,我可以导出到excel吗?

1 个答案:

答案 0 :(得分:2)

一种可能的方法是在将数据帧写入csv之前更改数据帧的实际内容(但您可以稍微自动化)。

作为概念证明,使用'\u2076'作为上标6的unicode表示:

In [21]: df
Out[21]: 
              a   b   c   d  e    f          g
0  Total (2000) NaN NaN NaN  2  1.6  10^6 km^2

In [30]: df['g'] = (df['g'].str.replace("10\^6", u"10\u2076")
    ...:                   .str.replace("km\^2", u"km\u00b2"))

In [31]: df
Out[31]: 
              a   b   c   d  e    f        g
0  Total (2000) NaN NaN NaN  2  1.6  10⁶ km²

In [32]: print df.to_csv(encoding='UTF-8', index=False)
a,b,c,d,e,f,g
Total (2000),,,,2.0,1.6,10⁶ km²