【发布时间】:2019-11-30 10:04:08
【问题描述】:
我正在尝试构建简单的 DataFrame。两者都有一个日期,而第一个有一个额外的列:
import pandas as pd
import datetime as dt
import numpy as np
a = pd.DataFrame(np.array([
[dt.datetime(2018, 1, 10), 5.0]]), columns=['date', 'amount'])
print(a)
# date_dt amount
# 2018-01-10 00:00:00 5
b = pd.DataFrame(np.array([
[dt.datetime(2018, 1, 10)]]), columns=['date'])
print(b)
# date_dt
# 2018-01-10
为什么日期的解释不同(有时间和没有时间)?当我稍后尝试应用合并时,它给我带来了问题。
【问题讨论】:
-
尝试:
a['date'] = pd.to_datetime(a['date']),这将允许您合并。即使我在等待你的问题的答案。当我运行a['date'] = pd.to_datetime(a['date'])结果是:datetime.datetime(2018, 1, 10, 0, 0)和b.date.iloc[0],答案是Timestamp('2018-01-10 00:00:00')。这就是您无法合并的原因。 -
谢谢。这样可行。我仍然想知道加载数据时发生了什么:-)
标签: python pandas numpy datetime