2017-03-17 4 views
0

私は結果をLaTeXに出力するためにパンダを使用しています。私は現在、次のように精度(印刷する小数)を設定しています。パンダデータフレームの表示精度

import pandas as pd 
df = pd.DataFrame({'a':[1234.56, 0.01, 1234.56],'b':[1234.56, 0.01, 1234.56]}) 

pd.set_option('display.float_format', lambda x: '%.2f' % x) 

df.to_latex('filename.tex') 

これは本当にうまくいきます。しかし、私は精度が私のデータフレームの特定の行(と結果のTeXテーブル)で異なるようにしたいと思います。パンダでこれを行うことは可能ですか?次のように

は、この例では、私は、小数点以下2桁に印刷する行0と2は、小数点以下の桁数なしと1行で印刷したい:

df 
     a  b 
0 1234 1234 
1 0.01 0.01 
2 1234 1234 
+0

はい、可能です。しかし、あなたの質問はあまりにも曖昧です。私は例を挙げることができましたが、あなたが探していたものではないことを私に教えてくれるように、時間をかけて例を挙げたいとは思いません。どうして私はそれが起こるかもしれないと思うだろう...おそらくその事が何度も起こったからだ。あなたは何をしようとしているかの良い例を提示する必要があります。どのように提示するかについて、[How to Ask](http://stackoverflow.com/help/how-to-ask)と[MCVE](http://stackoverflow.com/help/mcve)を読んでください。あなたの質問。 – piRSquared

+0

アドバイスをいただきありがとうございます。私の例がはっきりしていることを望む。 –

答えて

1

これは安っぽい答えであると私もよより良いものを考えるのに疲れました。しかし、質問の質について半分の講義をした後、私はあなたを吊り下げたくない。

p = pd.Series([1, 2, 0], df.index) 

df.apply(lambda x: x.map(p.map(lambda x: '{{:0.{}f}}'.format(x).format).loc[x.name]), 1) 

     a  b 
0 1234.6 1234.6 
1 0.01 0.01 
2 1235 1235 
+0

助けてくれてありがとう! –