0

私は long int を持っていますが、それを印刷したり文字列に変換したりするときに切り捨てられたくありません。

以下は機能しません。

import pandas as pd
b = pd.Series({"playerid": 544911367940993}, dtype='float64')
print("%s" % b['playerid'])
print(str(b['playerid'])
4

3 に答える 3

1

印刷で long int が切り捨てられたり、"%s"次を使用したフォーマットが切り捨てられたりすることはありません。

>>> "%s" % 12345678901234567898012345678901234567890
'12345678901234567898012345678901234567890'

したがって、書き込みによってそのオブジェクトに渡しpd.Series()たり、オブジェクトから取得したりすると、b['playerid']切り捨てが行われると思います。

于 2013-05-07T22:44:40.013 に答える
0

jreback が見つけた解決策:

In [75]: b.apply(lambda x: x.__repr__())
Out[75]: 
playerid    544911367940993.0
dtype: object

In [77]: b.apply(lambda x: "%.0f" % x)
Out[77]: 
playerid    544911367940993
dtype: object

https://github.com/pydata/pandas/issues/3542

于 2013-05-07T22:43:02.433 に答える