У меня проблемы с форматированием таблицы описания из панд. Я хотел бы иметь точность до 2 десятичных знаков в каждом столбце, но в последнем случае мне нужен формат 1.11e11. Я пробовал применять

data.styles.format({"last_column": "{:.2E}"})

, но, похоже, у меня это не работает, все тот же результат, который можно увидеть ниже.

Такие вещи, как: pd.set_option ('display.float_format', '{: .2E}'. Format) применяются ко всему pandas, что не то, что я хочу делать.

print(data.describe(percentiles=[],).fillna("-.--").round(2))
count           1               1               1             1        1               1
mean         1.43             0.4           34.58          0.07     0.71     1.12877e+08
std          -.--            -.--            -.--          -.--     -.--            -.--
min          1.43             0.4           34.58          0.07     0.71     1.12877e+08
50%          1.43             0.4           34.58          0.07     0.71     1.12877e+08
max          1.43             0.4           34.58          0.07     0.71     1.12877e+08

Я бы хотел избежать, если табуляция или любой другой табличный инструмент, если это возможно, хотел бы решить эту проблему на уровне панд.

У кого-нибудь есть решение? Спасибо :)

0
NotGoodProgrammer 2 Мар 2021 в 15:20

1 ответ

Лучший ответ

Просто используйте это: -

pd.set_option('precision',2)

И если вы хотите reset вернуть его в исходную форму, то есть его default value, используйте это: -

pd.reset_option('precision')
1
Anurag Dabas 2 Мар 2021 в 12:24