Как отформатировать специальные десятичные числа в pandas DataFrame - PullRequest
1 голос
/ 06 марта 2020

В столбце pandas DataFrame у меня есть такие числа

2840.189941

, округленные до двух десятичных знаков:

sp.loc['2019-05-13', 'Open'].round(2) 

вместо получения 2840.19, я хотел бы отформатируйте числа с шагом 0,25, чтобы я получил этот формат:

2840.25
2840.50
2840.75
...

Любые идеи, как это сделать sh?

1 Ответ

4 голосов
/ 06 марта 2020

Я думаю, вам нужно умножить на 4, использовать Series.round и поделить на 4:

df = pd.DataFrame({'Open': range(284018, 284100, 5)}) / 100

df['new'] = df['Open'].mul(4).round().div(4)
print (df)
       Open      new
0   2840.18  2840.25
1   2840.23  2840.25
2   2840.28  2840.25
3   2840.33  2840.25
4   2840.38  2840.50
5   2840.43  2840.50
6   2840.48  2840.50
7   2840.53  2840.50
8   2840.58  2840.50
9   2840.63  2840.75
10  2840.68  2840.75
11  2840.73  2840.75
12  2840.78  2840.75
13  2840.83  2840.75
14  2840.88  2841.00
15  2840.93  2841.00
16  2840.98  2841.00
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...