読者です 読者をやめる 読者になる 読者になる

<Python, Json, numpy, pandas> json.dumps() ではまったこと。

json.dumps() ではまったこと。
numpy.int64は蹴られる。。。

In [1502]: a
Out[1502]: [1, 2, 3]

In [1503]: type(a[0])
Out[1503]: int

In [1504]: b
Out[1504]: [1.0, 2.0, 3.0]

In [1505]: type(b[0])
Out[1505]: float

In [1506]: s
Out[1506]:
0    1
1    2
2    3
dtype: int64

In [1507]: type(s.values[0])
Out[1507]: numpy.int64

In [1508]: sf
Out[1508]:
0    1
1    2
2    3
dtype: float64

In [1509]: type(sf.values[0])
Out[1509]: numpy.float64

In [1510]: json.dumps(a)
Out[1510]: '[1, 2, 3]'

In [1511]: json.dumps(b)
Out[1511]: '[1.0, 2.0, 3.0]'


In [1513]: json.dumps(list(sf.values))
Out[1513]: '[1.0, 2.0, 3.0]'

In [1514]: json.dumps(list(s.values))
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-1514-e53942093a9e> in <module>()
----> 1 json.dumps(list(s.values))

追加。
ここでその話が話し合われているらしい。
2.7は動くけど3.4はだめらしい。

https://bugs.python.org/issue24313