Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 数据帧中的日期和JSON输出的转换问题_Python_Json_Pandas_Datetime_Data Conversion - Fatal编程技术网

Python 数据帧中的日期和JSON输出的转换问题

Python 数据帧中的日期和JSON输出的转换问题,python,json,pandas,datetime,data-conversion,Python,Json,Pandas,Datetime,Data Conversion,在我的pandas数据框架中有两列在转换为不同的日期格式时遇到了问题,这两列在Python中以及以JSON格式返回前端时都遇到了问题。这是数据库中数据的外观: print(df['column1'][0], df['column2'][0]) >> 2019-01-01 00:02:05 >> Name: column1, dtype: datetime64[ns] >> 01/01/2019 12:02:05 AM >> Name: colu

在我的pandas数据框架中有两列在转换为不同的日期格式时遇到了问题,这两列在Python中以及以JSON格式返回前端时都遇到了问题。这是数据库中数据的外观:

print(df['column1'][0], df['column2'][0])

>> 2019-01-01 00:02:05
>> Name: column1, dtype: datetime64[ns]

>> 01/01/2019 12:02:05 AM
>> Name: column1, dtype: object
第一列是datetime64[ns](时间戳?),第二列是字符串对象。我的目标是以相同的格式返回前端

问题1:对于第二列下的数据,当我使用
json.loads(df.to_json(orient='index',date'u format='None'))将其返回到前端时,它返回的很好,尽管我担心如果我真的想更改它,它不会更改为另一种格式。在我将pandas.to应用于_datetime()
或pandas.Timestamp()或使用日期_format='Epoch'作为json返回后,它保持不变。有没有办法将这样的字符串日期对象转换为ISO datetime对象

问题2:对于第1列的数据,我希望理想地将其转换为字符串格式,就像第2列的数据一样(反之亦然),但我没有尝试过任何效果。在后端,它通过尝试使用上述函数和其他函数进行转换来打印datetime64[ns]格式。当我使用
json.loads(df.to_json(orient='index',date'u format='None'))将其返回到前端时,它默认为Unix时间,例如
15463090025000
。JSON的唯一选项似乎是该格式或ISO格式,两者都不是,也不是我想要的格式


我将如何在后端转换这些格式,并将它们以任何一种原始格式返回到前端?

您是否尝试对每一列使用不同的
格式=
?我尝试过
print(df[col1][0],pd.to_datetime(df[col1][0],format=“%m/%d/%Y%I:%m:%S%p”)
打印了相同的未更改日期,前端仍在Unix时间。在稍微修改了一些东西之后,我发现了问题的答案:
df['col1']=df['col1']。应用(lambda x:x.strftime('%m/%d/%Y%I:%m:%S%p')