Проблемы с плавающей запятой при использовании loc - PullRequest
0 голосов
/ 01 марта 2019

Это может быть легко для пользователей Pandas, которые привыкли использовать числа, но, если честно, я буду признателен за ваши советы.

Я не могу получить значение, сохраненное в кадре данных при использовании.loc

Может кто-нибудь объяснить и помочь решить?Спасибо!

dict = [{'me': 0.094092328767113}]
df = pandas.DataFrame(dict)
df['me']
Out[32]: 
0    0.094092328767113
Name: me, dtype: float64
df.loc[0,'me']
Out[33]: 0.094092328767113001

1 Ответ

0 голосов
/ 01 марта 2019

Вы можете использовать базовое форматирование строки -

>>> '{:.15f}'.format(df.loc[0,'me'])
>>> '0.094092328767113'

Это приведет к типу данных строки.Кроме того, вы можете преобразовать его в плавающее, если вам нужно использовать numpy как -

>>> np.float64('{:.15f}'.format(df.loc[0,'me']))
>>> 0.094092328767113

Окончательное исправление сводится к обновлению версии Pandas и NumPy, что подтверждается OP в комментариях.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...