Предполагая, что у меня есть кадр данных pandas, и я хочу добавить тысячи разделителей ко всем числам (integer и float), что это простой и быстрый способ сделать это?Простой способ добавить тысячу разделителей в числа в Python pandas DataFrame
0
A
ответ
2
При форматировании номер с ,
вы можете просто использовать '{:,}'.format
:
n = 10000
print '{:,}'.format(n)
n = 1000.1
print '{:,}'.format(n)
В панд, вы можете использовать параметр formatters
для to_html
, как описано here.
num_format = lambda x: '{:,}'.format(x)
def build_formatters(df, format):
return {
column:format
for column, dtype in df.dtypes.items()
if dtype in [ np.dtype('int64'), np.dtype('float64') ]
}
formatters = build_formatters(data_frame, num_format)
data_frame.to_html(formatters=formatters)
Добавление разделителя тысяч фактически обсуждалось довольно много в stackoverflow. Вы можете прочитать here или here.
0
formatters параметр в to_html возьмет словарь.
Он не будет работать с dataframe, который имеет целых чисел. Работает только для Float –