我有一个pandas系列,其中包含从日-月-年字符串创建的日期时间对象
series = pd.Series(['3/11/2000', '3/12/2000', '3/13/2000'])
series = pd.to_datetime(series)
print series
0 2000-03-11
1 2000-03-12
2 2000-03-13
dtype: datetime64[ns]
之后,在使用这些datetime对象之后,我想将这个系列转换成日-月-年格式的json。然而,to_json返回日期时间HH:MM:SS等
json = series.to_json(orient='index', date_format='iso', date_unit = 's')
print json
{"0":"2000-03-11T00:00:00Z","1":"2000-03-12T00:00:00Z","2":"2000-03-13T00:00:00Z"}
是否有任何内置的和优雅的方法来返回日期
{"0":"2000-03-11","1":"2000-03-12","2":"2000-03-13"}
没有HH:MM:SS等。我得到的最接近的(没有转换为字符串和编写函数来解析)是to_json的date_unit参数,尽管最大的时间单位似乎是秒。
有人能帮忙吗?由于
像这样?
In [64]: series.dt.date.astype(str).to_json()
Out[64]: '{"0":"2000-03-11","1":"2000-03-12","2":"2000-03-13"}'
这是不优雅的,但你可以尝试转换为json之前的字符串:
>>> series.apply(lambda x : x.strftime('%Y-%m-%d')).to_json()
'{"0":"2000-03-11","1":"2000-03-12","2":"2000-03-13"}'