Ошибка: объект «Серии» не имеет атрибута «sort» [duplicate]

import pandas as pd
pd.options.display.float_format = '${:,.2f}'.format
df = pd.DataFrame([123.4567, 234.5678, 345.6789, 456.7890],
                  index=['foo','bar','baz','quux'],
                  columns=['cost'])
print(df)

дает

        cost
foo  $123.46
bar  $234.57
baz  $345.68
quux $456.79

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

В противном случае, если вы хотите форматирование доллара только для некоторых поплавков, то я думаю, вам придется предварительно модифицировать фрейм данных (конвертируя эти поплавки в строки):

import pandas as pd
df = pd.DataFrame([123.4567, 234.5678, 345.6789, 456.7890],
                  index=['foo','bar','baz','quux'],
                  columns=['cost'])
df['foo'] = df['cost']
df['cost'] = df['cost'].map('${:,.2f}'.format)
print(df)

дает

         cost       foo
foo   $123.46  123.4567
bar   $234.57  234.5678
baz   $345.68  345.6789
quux  $456.79  456.7890
49
задан Shi Jie Tio 23 May 2017 в 00:30
поделиться

1 ответ

sort устарел для DataFrames в пользу необходимости пользователя либо sort_values, либо sort_index. Здесь они описаны здесь здесь и здесь .

120
ответ дан Brad Solomon 17 August 2018 в 23:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: