kakakakakku blog

Weekly Tech Blog : Keep on Learning 👍

Pandas で指数表記を無効化する

Jupyter NotebookPandas のコードを実装しているときに「指数表記を無効化」する場合は pd.optionsdisplay.float_format を設定する.以下にサンプルとして「桁数 2」「桁数 6」の例を載せておく.

# 小数点以下 桁数 2
pd.options.display.float_format = '{:.2f}'.format

# 小数点以下 桁数 6
pd.options.display.float_format = '{:.6f}'.format

pandas.pydata.org

DataFrame で動作確認する 🎯

random.uniform で取得した乱数を3乗した適当な値を DataFrame にする.デフォルト設定だと e+08 のように指数表記になる.

import pandas as pd
import random

df = pd.DataFrame(
    {
        'id': [1, 2, 3],
        'dest': [random.uniform(100, 1000) ** 3, random.uniform(100, 1000) ** 3, random.uniform(100, 1000) ** 3]
    }
)
df

#    id          dest
# 0   1  5.343391e+08
# 1   2  1.095209e+08
# 2   3  5.267437e+08

次に pd.optionsdisplay.float_format'{:.2f}'.format を設定する.桁数 2 で指数表記を無効化できた!

pd.options.display.float_format = '{:.2f}'.format
df

#    id         dest
# 0   1 534339073.50
# 1   2 109520894.40
# 2   3 526743661.86

今度は pd.optionsdisplay.float_format'{:.6f}'.format を設定する.桁数 6 で指数表記を無効化できた!

pd.options.display.float_format = '{:.6f}'.format
df

#    id             dest
# 0   1 534339073.500472
# 1   2 109520894.397633
# 2   3 526743661.855074

Jupyter Notebook の実行結果も載せておく!

関連記事

kakakakakku.hatenablog.com