我正在从excel表中读取数据,需要将数据转储到MongoDB。但是日期列是作为数字插入的,而不是ISODate('')。我的代码是
df = pd.read_excel(excel_file, sheetname=0,index_col=None,converters={'Date': str})
df['Date'] = pd.to_datetime(df['Date'],format ="%Y-%m-%d %H:%M:%S")
df = pd.DataFrame.from_dict(df)
records = json.loads(df.T.to_json()).values()
print(records)
db = client.local
print(db)
evbal = db.test.insert_many(records)
输出:
{"Date":1519862400000,"AgentID": "xxxx", "LOB": "yy", "Channel":"os"}
答案 0 :(得分:0)
您似乎正在存储时间戳而不是日期时间对象,可以将其序列化和放大。存储在MongoDB中。我无法访问您的Excel文件,因此我无法真正使用它,但我建议尝试类似
from datetime import datetime
....
df['Date'] = datetime.fromtimestamp(df['Date'])